私は、すべての msvcrXX ファイルから msvcr80.dll を含むモバイル デバイスを持っています。Visual Studio は、ライブラリを msvcr90.dll に依存するライブラリにコンパイルします。
dll の依存関係を変更するにはどうすればよいですか? モバイル デバイスのランタイム バージョンを変更したくありません。案の定、問題は /MT でコンパイルすることで回避できますが、回避ではなく解決策に関心があります。
私は、すべての msvcrXX ファイルから msvcr80.dll を含むモバイル デバイスを持っています。Visual Studio は、ライブラリを msvcr90.dll に依存するライブラリにコンパイルします。
dll の依存関係を変更するにはどうすればよいですか? モバイル デバイスのランタイム バージョンを変更したくありません。案の定、問題は /MT でコンパイルすることで回避できますが、回避ではなく解決策に関心があります。
一般に、特定のバージョンの CRT ライブラリに対してプロジェクトをコンパイルおよびリンクする場合にのみ可能です。特定のバージョンの VS は、これらのライブラリの具体的なバージョンをサポートしています: VS 2005 => msvcrt8 VS 2008 => msvcrt9
標準ライブラリは #pragma comment(lib, "libcXXX.lib") または #pragma comment(lib, "msvcXXX.lib") 経由でリンクされています
プロジェクト構成に応じて(afx.hを見てください)
VCPROJ には CruntimeLib の依存関係の定義がないため、ここで変更する必要はありません。
具体的なプラットフォーム (例: Win32 または PocketPC 2003 など) の古いバージョン (8.0) で必要な libs/dlls/headers の完全なツリーを取得した場合は、次の場所で特定のプラットフォームのパスを変更する必要があります。
ツール / オプション / プロジェクトとソリューション / VC++ ディレクトリ
(!!!注意 メニューからエクスポート操作を介して前に構成をバックアップします)