アプリケーションが C# で記述されている場合、Microsoft.Deployment.WindowsInstaller.Package.dll またはその他の wix dll を参照して、たとえば新しい MSI ファイルを作成できますか?
はい。これらの Microsoft.Deployment.* DLL は「Deployment Tools Foundation」と呼ばれ、 wix インストールのdocフォルダーにあるdtf.chmおよびdtfapi.chmファイルに文書化されています。
新しい MSI をゼロから作成するには、次のように開始します。
string path = "path/to/myinstaller.msi";
using (var db = new Database(path, DatabaseOpenMode.Create))
{
// lots of SQL queries to put stuff in the database here
}
または、既存のテンプレート MSI ファイルをコピーし、SQL クエリを使用して変更することもできます。
また、バイナリ ファイルをパッケージ化してデータベースに追加する必要があります。InstallPackage
クラスでmsiを開くことでそれを行うことができます。
いずれにしても、この方法でインストーラーを作成するには、Windows インストーラー データベース テーブルに関する詳細な知識が必要です。