似たような質問がいくつかあることは知っていますが、私の要件と本当に同じ要件があるとは思いません。
当社の DLL は Visual Studio 2005 でコンパイルされており、インストールの制約により、特定のバージョンの CRT とリンクする必要があります。これは絶対です。最新バージョンで再コンパイルすることは解決策ではありません。
最近、Boost ライブラリを更新しました。ただし、Boost をビルドすると、自動的に最新の CRT が使用されました。ここで、Boost をプログラムにリンクすると、CRT の最新 (間違った) バージョンと CRT の古い (正しい) バージョンの両方に依存関係が作成されます。最新バージョンへの依存関係をなくす必要があります。
この問題の最善の解決策は何ですか? 現時点で考えられる最善の方法は、古いバージョンを使用して Boost を再構築することですが、ソースを変更せずに簡単に再構築する方法がわかりません。
Visual Studio で特定のバージョンの CRT をグローバルに (プロジェクトごとではなく) 使用するように強制する方法があれば、それは素晴らしいことです。または、CRT の最新バージョンを単純に削除する方法ですが、OS の一部と見なされているため、それは不可能だと確信しています。