C++/CLI C++/CLR ドットネット
.NET Framework Form(フォーム)アプリケーションで windows.hをインクルードする時の注意事項
Win32APIを呼び出すわけじゃなけど windows.hの便利な構造体や定数を使いたいって時に
・stdio.h とかと違って ちゃんと stdafx.h でインクルードする必要がある模様
しかも
// TODO: プログラムに必要な追加ヘッダーをここで参照してください。
これのすぐ後最初でする必要がある
その前に 自前のヘッダーのインクルード文を書いたらエラーが出た
・たまに Formの関数と被る
例:::System::IO::Directory::GetCurrentDirectory() と
#define GetCurrentDirectory GetCurrentDirectoryA が被ってエラー
とりあえず undef したけど大丈夫かね? もっとスマートな方法ないものか
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Win32APIを呼び出す こっちは試してないけど 調べてたら出てきたからメモ(コピペ)
・user32 やらの必要なものは自前でリンクする
stdafx.h
#include
#pragma comment(lib, "user32.lib")
または
プロジェクトの プロパティ ページ の リンカ の 入力 の 追加の依存ファイルに指定
プロジェクトのプロパティ → 親またはプロジェクトの既定値から継承 のチェック
・デフォルトでusing namespaceがゴソッと入っているので一部の名前がカブる。
(MessageBoxとか。)
・ハンドルの受け渡しがめんどくさい(動いたけど調べてないので合ってるか不明。)。
・デフォルトでUNICODEビルドになっている。