2013年3月24日日曜日

Visual Studio 2012でXP用のプログラム

デフォルトだと、VS2012で作成した実行ファイルはXPで動かないのかよ…
こんなことに1時間もハマッてしまった…

ここに詳しくかいてあった。
http://blogs.msdn.com/b/vcblog/archive/2012/10/08/10357555.aspx

しかもサポートされたのはSP1からかよ…

 まあ、これで一安心と思ったが、ここでもう一ハマリしてしまった。
「プロジェクトのプロパティ」でビルドツール を"v110_xp"にして作成しても、XPで起動すると未だに「有効なWin32アプリケーションではありません」と出てしまう。

上のリンクのコメント欄での議論を読むとわかるのだが
原因は、プロジェクトのプロパティ- リンカー - システム - サブシステムの項目が空欄になっていたことだった。

新規プロジェクトを作成するとき私は「空のコンソール」を選ぶのだが、これだとサブシステムの項が空欄になる。
7ではこのままでも動くのだが、XPではしっかり指定しないとダメなようだ。


もうハマり疲れた

0 件のコメント: