最も一般的な配置シナリオでは、インストールパッケージを単一の自己展開EXEとして配布するのが 望ましいものです。dotNetInstaller は、依存関係の埋め込みと スタンドアローン パッケージされた setup.exe の作成を サポートしています。これは、全ての依存関係を一連の CAB ファイル群に CAB 書庫化し、 それらを setup.exe に埋め込み、CAB の内容を実行時に展開する事によって 達成されています。 また、dotNetInstaller は完了時に 展開された一時ファイルの消去も 可能です。 サードパーティーのパッケージング・書庫化 技術は 必要ありません。

-
依存関係を埋め込むには、EmbedFile や EmbedFolder コンポーネントを ブートストラッパー コンフィギュレーションに 明示的に追加しなければなりません。 その他の、msi からといった埋め込みや、 openfile 、サブコンポーネントの download は、リンカーによって自動的には なされません。
コンポーネントを右クリックして、 Add, Embed File か Embed Folder を選ぶ。新しく作成された埋め込みノードを選び、そのプロパティを調節する。
EmbedFile サブコンポーネントの sourcefilepath は、あなたのファイルシステム上のファイルの場所です。 targetfilepath は、インストールの間 展開されたファイルの #CABPATH の下の、ファイル名を含む相対的なあて先パスです。 #CABPATH の下にファイルを展開するのに targetfilepath を省略しても構いません。 sourcefilepath は、インストーラーリンカーのコマンドラインで指定された /AppPath の値に相対的な場所であるかもしれません。それは今度は、リンカーコマンドが実行された所から カレントディレクトリーが デフォルトになります。
EmbedFolder サブコンポーネントの sourcefolderpath は、あなたのファイルシステム上のフォルダの場所です。 targetfolderpath は、インストールの間 展開されたフォルダの #CABPATH の下の 相対的なあて先パスです。 #CABPATH の下にフォルダを展開するのに targetfolderpath を省略しても構いません。 sourcefolderpath 中で * と ? の特殊文字を使って 追加のワイルドカードオプションを指定しても構いません。また 後者は、 インストーラーリンカーのコマンドラインで指定された /AppPath の値に相対的な場所であるかもしれません。それは今度は、リンカーコマンドが実行された所から カレントディレクトリーが デフォルトになります。
注:
#CABPATH の代わりに どこででも #TEMPPATH を 使って構いません。#CABPATH はデフォルトで #TEMPPATH\#GUID です。もしセットアップの完了後に 一時ファイルを消したいならば、#TEMPPATH の代わりに #CABPATH を使い、cab_path_autodelete コンフィギュレーション オプションをセットして下さい。
注:
ログ記録を有効にしている時、ログファイルを #CABPATH 中に出力しない事を 確かにして下さい。 これは、インストーラーがまだログファイルに書こうとして #CABPATH ディレクトリーの消去を 妨げます。
-
オプションで、 /EmbedFile と /EmbedFolder でサブフォルダを含むフォルダ全体を持つ InstallLinker.exe コマンドライン経由で、個々のファイルを埋め込んでも構いません。 後者はまた、フラグも指定させます。例えば、全ての .msi ファイルを全てのサブフォルダ中に埋め込むには /EmbedFolder:Path\*.msi 。/EmbedFolder で ファイルは指定されたフォルダの下に 構造を反映して展開される事に 注意して下さい。例えば、/EmbedFolder:c:\files が c:\files\folder1\setup.msi を埋め込むならば、 展開された setup.msi は folder1\setup.msi の下に現れます。 違った展開構造を定義するには、ビルトイン EmbedFolder サブ コンポーネントを使って下さい。
-
セットアップを InstallLinker.exe でリンクして、埋め込まれてしまったファイルを テストする。CAB の内容を表示するのに Setup.exe /DisplayCab を実行する。カレントフォルダの SupportFiles というディレクトリーの下に 全ての CAB の内容を出力するのに Setup.exe /ExtractCab を実行しても構いません。
(訳注: 埋め込みの targetfilepath は #CABPATH から相対的でファイル名を含むものに限定されるようですので、 msi コンポーネント ノードの package 属性を変更して下さい。そうしなければ Windows インストーラー サービスが ファイルが見つからないと言ってきます。targetfolderpath でも同様。)