LoginSignup
0
0

More than 1 year has passed since last update.

新しめのWindowsでVisual C++ 2005とPlatform SDKを一緒に使う

Last updated at Posted at 2018-11-28

もともとの「Visual C++ 2005 Express Edition と Microsoft Platform SDK を一緒に使う」では以下のようになっている。


Windows Server 2003 SP1 Platform SDK をインストールしてから、

  • オプション -> プロジェクトおよびソリューション -> VC++ ディレクトリ

    • 実行可能ファイル C:\Program Files\Microsoft Platform SDK\Bin
    • インクルードファイル C:\Program Files\Microsoft Platform SDK\Include
    • ライブラリファイル C:\Program Files\Microsoft Platform SDK\Lib
  • C:\Program Files\Microsoft Visual Studio 8\VC\VCProjectDefaults\corewin_express.vsprops

    • AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"
  • C:\Program Files\Microsoft Visual Studio 8\VC\VCWizards\AppWiz\Generic\Application\html\1041\AppSettings.htm

    • WIN_APP.disabled WIN_APP_LABEL.disabled DLL_APP.disabled DLL_APP_LABEL.disabled をコメントアウト

しかし、必要になったのでVisual C++ 2005EEでlibzmqをビルドしようとしたところ、InitializeConditionVariableを呼び出そうとしてエラーが出てしまった。今回はVisual C++ 2010EE+Win64のために「Microsoft Windows SDK for Windows 7 and .NET Framework 4」をインストールしてあったので、

  • 実行可能ファイル C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin
  • インクルードファイル C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include
  • ライブラリファイル C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Lib

としたところビルドできた。どうもlibzmqは処理系ではなく実行しているWindowsのバージョンで呼び出しを変えるらしく。古いVisual C++で検証を行う必要がある場合、新しいSDKを読み込ませるのは有用になることもあるかもしれない。

また、stdint.hのC:\Program Files\Microsoft Visual Studio 8\VC\includeへの追加も必要だった。
https://www.vector.co.jp/soft/win95/prog/se432866.html

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0