3

C#で開発した1つのアプリケーションと.NetFramework4.0のセットアップを含むファイル「setup.exe」を作成したいと思います。

アイデアは次のとおりです。「setup.exe」を実行すると、コンピュータに.net Framework 4.0がインストールされているかどうか、インストールされていないかどうかが確認されます。

InstallShield2009を使用します。

誰もがこれを行う方法を知っていますか?

わからないことがあれば教えてください。

ありがとう。

4

5 に答える 5

2

セットアップに関しては、Visual Studioに付属している組み込みのメカニズムを使用できます。たとえば、setup.exeで、必要なフレームワークバージョンがインストールされているかどうかを自動的に確認し、インストールされていない場合はインストールできます。開始するには、MSDNを参照してください。

アプリケーション/EXEをすべての管理された依存関係を含む1つのファイルで構成することに関して、いくつかのオプションがあります。

  • ILMerge(無料)を使用する方法については、ここここ
    を参照してください

また

  • SmartAssembly(商用)のようなツールを使用
    して、他のものと一緒に埋め込んだりマージしたりできます(ソースコードを変更する必要はありません)

また

  • 自分で10行未満のコード(無料ですがソースコードの変更は最小限)
    は、必要なすべての依存関係を「埋め込みリソース」としてマークします-このようにして、それらはEXEファイルに含まれます...AssemblyResolve実行時にリソースから読み取るハンドラーを設定する必要があります必要なDLLを.NETランタイムに返します...
于 2012-03-14T16:11:45.640 に答える
2

セットアップを作成するための多くのフレームワークがあります。
私のお気に入りはWIXです。ここからダウンロードできます: http
: //wix.sourceforge.net/ C#を使用してWIXインターフェイスを作成するためのsharpsetupと呼ばれるフレームワークもあります。ここからダウンロードできます:http://sharpsetup。 eu /しかし、ターゲットマシンに最初から.NETがない可能性があるため、ニーズに合うかどうかはわかりません(.NET 2.0でセットアップを記述できる可能性はありますが、わかりません)。

WIXの学習には時間がかかる場合がありますが、これを超えたら、やりたいことを行うのはそれほど難しくありません。

于 2012-03-14T16:12:17.320 に答える
1

完全な(分割された)セットアップを自己解凍型ファイルにパックすることは実行可能ですか?WinRarなどを使用して、「autorun」で圧縮されたexeをビルドできます。

于 2012-03-14T16:06:00.693 に答える
0

私の知る限り、標準のInstallShield2009では不可能です。少なくともInstallShield2010が必要です(Visual Studio2010用のInstallshield2010拡張パックを使用)。

それを「ハック」する方法があるかどうかはわかりません...

于 2012-03-14T16:15:28.447 に答える
0

私はこの質問を解決し、カスタムアクションを作成しました。これは「実行可能ファイルを開く」タイプであり、ウィザードのボタンイベントでこのカスタムアクションを呼び出しました。

于 2012-03-16T12:31:49.590 に答える