0

私は StackOverflow を閲覧しましたが、そのような簡単な解決策があると思われるものに対する実用的な解決策を見つけることができませんでした.VS2005 または VS2008 で開発された .Net プロジェクトがたくさんあり、それらを VS2010 にインポートしました。それらの 1 つは C++ プロジェクトで、現在はフレームワーク 4.0 をターゲットにしています (私の選択によるものではありません)。クライアントの 1 人が、MSVCP100D.dll がないために、このアプリケーションの実行に問題があります。このスレッドを確認しました MSVCP100D.dll とは何ですか?最も受け入れられている答えは単純です。クライアントに Microsoft Visual C++ 2010 再頒布可能パッケージをインストールさせることです。ただし、クライアントはインストールしないほど頑固であり、Microsoft Visual C++ 2008 Redistributable がインストールされていることを私は知っています。したがって、私の結論が正しく、MSVCP100D.dll が VS2010 の新機能である場合は、以前のフレームワーク バージョンをターゲットにして、VS2010 でプロジェクトを再構築するだけで済みます。問題は、どうすれば VC++ ターゲット フレームワークを獲得できるかということです。C# および VB プロジェクトを変更するためのガイドラインをいくつか見つけることができましたが、VC++ に関するガイドラインはありませんでした。ポインタはありますか?

編集:リリースモードでコンパイルすることを提案した皆さんへ:私はそうです!「D」はデバッグの略であることが指摘されていますが、これはかなり奇妙です。

4

2 に答える 2

1

プロジェクトのプロパティに移動します。

左側で、 [ Configuration Properties] > [ General ] に移動します。

プラットフォームツールセットの値を確認します。ドロップダウン リストからv90を選択して、2008 をターゲットにします。

詳細については、こちらを参照してください: Visual C++ 2010 と VC 2008 の互換性

詳細については、こちらを参照してください: http://blogs.msdn.com/b/vcblog/archive/2009/12/08/c-native-multi-targeting.aspx

ここに画像の説明を入力

また、Dark Falcon が言及しているように、これはランタイムのデバッグ バージョンです。

于 2012-07-11T19:42:58.093 に答える
1

実際には、ランタイムのデバッグ バージョン (「D」) を使用しています。非デバッグ版でコンパイルしてみましたか?

考慮すべきもう 1 つの可能性は、ランタイム ライブラリと静的にリンクすることです。プログラムは大きくなりますが、DLL 依存関係はありません。

于 2012-07-11T19:40:59.630 に答える