TOP MAP UP

AMD64 Software Visual Studio .NET 2005 Professional beta1 編

 単純にAMD64のバイナリを吐きたい場合にはVisual Studio .NET 2005 Expressでも良いのだが、本当にconsoleのプログラム(DOSコマンドみたいなあれ)しかコンパイル出来ないので、個人的にはエミュレータが作成できないとアレなので、Professional版を入手する必要にせまられた。
 ちなみにProfessional版(以下VS8とする)はMSDNに入るか、雑誌の付録しか入手経路が無いので、しょうがなく雑誌を購入した(最初から雑誌としては全く期待してなかったが、ほとんど提灯記事みたいなのしか載ってない:泣)

 なおExpressもそうなのであるが、XP x64にインストールするには.NET Framework Version 2.0 Redistributable Package Beta 1 x64 (64 Bit)のインストールが必要なので注意。
 またDirectX SDKも9.0c準拠の物(Microsoft DirectX 9.0 SDK Update (February 2005) )が出ているので、それを入れると良い。この中にはAMD64向けのライブラリが入ってるので、忘れずにリンク指定を行っておく必要がある(後述)
 なおVS8のインストール自体は特に注意すべき部分は無い。自分に必要なコンポーネントを適宜選んでインストールする。ちなみに自分はVC++/MFC無しで入れている(MFC使った事無い:汗)




ライブラリ等のフォルダ参照はターゲットの環境(AMD64/Win32/ARM/SH...等)毎に設定出来る(ちょっと面倒くさいが)使用するものだけ設定すればよい。




 ビルドターゲットが通常状態でWin32/AMD64 x Debug/Releaseで4通りあり(要らなければ削除可能だが)、更にこのビルドターゲット毎に設定を行う必要がある。特に出力先の設定は、フォルダ違いの同名ファイルのコンパイルが通らないので、ちゃんと設定する必要がある(特にエミュだとデバイスを抽象化する関係上、同じファイル名のソースは珍しくない)




 現在ベータ版なのでそうなのかもしれないが、.NETの関係で以前のストリング操作等バッファが関係する関数がSECURE/INSECUREという区分けで扱われており(これだけであれば特に問題はないが)コンパイル時にこれらの関数が含まれていると、warningが出るようになっている。このwarningを防ぐには画像のように「4996」を無視対象に設定する必要がある。




 AMD64を選択した場合に、サブシステムの部分等がすっぽり抜けているときがある。Windowsプログラムの場合はSystemはWindowsで。




 AMD64の場合、対象コンピュータもAMD64にしておく必要あり(ビルドターゲットは単に名前なので)