私は、VistaとXPで動作する最初のリリースがWindows 7のみの大規模なC++プロジェクトを変更しています。C++コードで使用されるWin32 APIのバージョンを判別するためのツールですか?
主な仕事は、GetProcAddressを実行時に使用するW7 API呼び出しを変更することです(他のプラットフォームでは利用できないメソッドとの静的なリンクを避けるため)。どの呼び出しを変更する必要があるのかを確認するのに役立ちます。うまくいけば、C++コード自体を調べてください。
これに失敗した場合、古いWindows SDKに対してプロジェクトを構築するのが最善でしょうか? - 例:Windows XPは、コンパイル・エラーが発生しますよりも新しいhttp://www.microsoft.com/download/en/details.aspx?displaylang=en&id=6510
これは正しいトラックで私を得ました。 WINVERは推奨されていません - この記事で説明されているように、新しい公式な方法はNTDDI_VERSIONです。http://msdn.microsoft.com/en-us/library/aa383745.aspx - しかし、あなたの方法は機能しますとても分かりました) - ありがとう! –
WINDはいつNTDDI_VERSIONの代わりに非難されましたか?それがVista/7の変更だった場合は、それを元に戻す必要があるかもしれません。 :P – ssube
@peachykeen:WINVERを定義してもSDKには何の違いもないようだから、とにかくそれは私の印象でした。 (私はWin7の呼び出しから何のエラーもありません) –