6

ユーザーがインストールした可能性が高いVisualC++ランタイムは何ですか?

更新:この質問は、「C++で記述されたインターネットベースのアプリケーションを展開するための最良の方法は何ですか。MicrosoftVisualC++ランタイムが必要です」という質問になりました。

4

3 に答える 3

8

Microsoft が、OS インストールで利用可能なランタイムについて保証するとは思えません。これは、特定のランタイムを使用してビルドするアプリケーションが含まれていることの副作用です。

特定の C++ ランタイムが必要な場合は、自分でインストールする必要があります。MSI インストールを構築している場合、Visual Studio には必要なマージ モジュールがインストールされています。そうでない場合は、Microsoft から ランタイムをダウンロードできます。

単一の EXE をコピーするだけでインストールできるようにする場合は、ランタイムに静的にリンクします。ランタイムは EXE に組み込まれ、外部依存関係はありません。

編集:この回答も参照してください-> Microsoft は、C++ ランタイムのどのバージョンも Windows にインストールされることを明示的に保証していません。

于 2010-11-13T04:01:32.413 に答える
5

C ++ベースのアプリケーションのインターネット展開が必要なため、この回答は重要です。


私は次のことを発見しました:

  • Windowsの新規インストールには、C ++ランタイムは含まれていません(msvcrt.dllを除く)。
  • Windows XP以降には、.NET Frameworkランタイムが付属しています(これは適切ではありません)。
  • C ++ランタイム再配布可能ファイルは、少量のダウンロード(1個あたり1〜4 MB)です。
  • 自動更新では、C++ランタイムはインストールされません。
  • ランタイムがインストールされているとき。Microsoft Updateが有効になっていて、再配布可能なインストーラーを使用して展開されている限り、Windowsはセキュリティパッチを処理します。
  • インターネット展開:インストーラー(静的にリンクされている)は、ランタイムの存在を検出し、まだインストールされていない場合はダウンロードする必要があります。VC6ランタイムを使用するgcc-mingw32コンパイラを使用することもできます。このアプローチにはインターネット接続が必要です。
  • ほとんどの主要なアプリは静的にリンクしているようには見えません。しかし、Mozilla Firefoxのように、カスタムランタイムをDLLとして配布するものもあります。

Microsoftは、.NETの場合と同様に、OSにC++ランタイムを含めることを開始する必要があります。

于 2010-11-16T10:34:07.703 に答える
2

再配布可能な場合は、インストーラで再配布することを意図しています。インストーラーに「まだ存在しない場合はインストールする」項目として含めます。

具体的な質問についてですが、Microsoft の Web サイトは試しましたか? 少し検索に時間がかかるかもしれませんが、そこにあるはずです。

于 2010-11-13T03:21:59.737 に答える