2010-12-13 7 views
10

私は、Visual Studioのセットアップとデプロイメントプロジェクトを使用して作成したインストーラを使用してアプリケーションをデプロイしています。セットアッププロジェクトをビルドすると、.exeと.msiファイルが作成されます。.Netインストーラ - .exeと.msiの差異

私はそれらの違いを知りたいと思います。

.exeが.msiなしでは動作しないことに気付きましたが、その逆はそうではありません。

+0

この回答を知りたいと思います。 +1 –

+0

私はいつも思っていただろう! – TabbyCool

答えて

1

エイドリアンは正しいです。これによりさらに多くの情報が追加される可能性があります。

http://www.ghacks.net/2009/03/23/msi-or-exe-setup/

+1

そのリンクのコンテンツの一部を追加/引用/要約できますか?リンク腐敗の場合、これは将来役に立たないだろう... –

10

exeファイルはbootstrapperであり、必要な前提条件がインストールされ、セットアップ(msiファイル)が呼び出されます。

あなたは、MSIファイルを実行し、自身でセットアップを起動することができますが、必要な前提条件がインストールされていない場合、それは失敗します(可能な例:.NET Frameworkの、VC++再配布可能、などMSI、新しいバージョンの)

基本的にすべての前提条件がインストールされ、インストーラ(msiファイル)の起動が試行されるため、ブートストラップ(exeファイル)でセットアップを実行しようとするとmsiが失われます。ファイルがそこになければ、何を開始する必要はありません。

アプリケーションのニーズに応じて、アプリケーションの前提条件としてMerge Modulesを使用することも同様の方法です。マージモジュールは基本的にすべての必要なコンポーネントをメインインストーラにロードするので、すべてが内部にある1つのMSIファイルで終わることになります。ブートストラップを使用する必要がない場合は、使用するすべてのコンポーネントにマージモジュールがあることを確認する必要があります。

1

私はMSIファイルは協会が、Windowsインストーラであることで、インストールのためだけのスクリプトであると信じています。実行可能ファイルはMSIをラップして、ほぼ同じことを行うローダーを作成しますが、前提条件をインストールできます。

関連する問題