web-dev-qa-db-ja.com

Visual Studio 2013 msvcr120からmsvcr100

Restribファイルをmsvcr100に変更して、他のコンピューターが.dllファイルに問題なくプログラムを実行できるようにすることは可能ですか?もしそうなら、それをどうやって得るのですか?

プログラムをコンパイルしましたが、msvcr120.dllファイルが見つからないため、他の人はそれを使用できません。ですから、どうにかしてそれを変更できたら素晴らしいと思います。

古いVisualstudioバージョンなしでPlattformtoolsetをインストールすることは可能ですか?

14
BennX

いくつかの選択肢があります。

  1. マシンにVS2010をインストールし、プラットフォームツールセットオプションをv100に設定します。
  2. ここ からWindows SDK v7.0Aをインストールします。これは、VS2013のプラットフォームツールセットメニューに新しいオプションを追加する必要があります(SHOULD/CAN)。ただし、これを機能させるのはかなり手間がかかります。 (箱から出してすぐに機能することはめったにありません)。アプリケーションでMFCを使用する場合、このオプションは適切ではありません。MFCライブラリはこのSDKに含まれていません。
  3. ユーザーに here からMicrosoft VS 2013 C++再頒布可能パッケージをインストールしてもらい、関係なく続行します。
  4. ランタイムDLLへの動的リンクを使用する代わりに、VS2013ランタイムに静的にリンクします。これは、IDEでプロジェクト設定を通じてC/C++ > Code Generation > RunTime Library > Multi-threaded (/MT)または(/MTd)で設定できます。必要なすべてのコードがアプリにコンパイルされ、ファイルが作成されます大きいが、あなたが言及する問題を回避します。
29
Baldrick

Project > Properties > General、という設定がありますPlatform toolset。これを使用して、使用するビルドツールチェーンのバージョンを変更できます。

screenshot

プラットフォームツールセット の変更に関して考慮すべき1つのこと:コンパイラーを変更するため、Visual Studio 2010よりもC++機能newerコンパイルされません。また、他のバージョンをインストールする必要があります。

これを処理するbest方法は、それらに Visual C++ Redistributable for Visual Studio 201 を与えることです。

あなたは彼らにそれを自分でやらせるか、インストーラーを作ることができます。

1
crashmstr