Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在没有蜡烛/灯光的情况下动态创建WIX MSI_Wix_Windows Installer_Wix3.5 - Fatal编程技术网

在没有蜡烛/灯光的情况下动态创建WIX MSI

在没有蜡烛/灯光的情况下动态创建WIX MSI,wix,windows-installer,wix3.5,Wix,Windows Installer,Wix3.5,如果我想动态创建MSI安装程序,有没有一种方法可以在不包含wix sdk应用程序(如candle.exe和light.exe)的情况下实现这一点?如果我的应用程序是用C#编写的,我是否可以引用Microsoft.Deployment.WindowsInstaller.Package.dll或其他wix dll,例如创建一个新的MSI文件 我基本上希望使用控制台应用程序动态创建msi文件,而不必引用wix控制台应用程序。您可以这样做:您可以直接使用wix API(受wix规定的许可条款约束)也可以

如果我想动态创建MSI安装程序,有没有一种方法可以在不包含wix sdk应用程序(如candle.exe和light.exe)的情况下实现这一点?如果我的应用程序是用C#编写的,我是否可以引用Microsoft.Deployment.WindowsInstaller.Package.dll或其他wix dll,例如创建一个新的MSI文件


我基本上希望使用控制台应用程序动态创建msi文件,而不必引用wix控制台应用程序。

您可以这样做:您可以直接使用wix API(受wix规定的许可条款约束)也可以直接使用

您可以这样做:您可以直接使用WiX API(根据WiX规定的许可条款)

如果我的应用程序是用C#编写的,我是否可以引用Microsoft.Deployment.WindowsInstaller.Package.dll或其他wix dll,例如创建一个新的MSI文件

对。这些Microsoft.Deployment.*DLL被称为“部署工具基础”,它们记录在wix安装的doc文件夹中的dtf.chmdtfapi.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来实现这一点

在任何情况下,以这种方式创建安装程序都需要详细了解

如果我的应用程序是用C#编写的,我是否可以引用Microsoft.Deployment.WindowsInstaller.Package.dll或其他wix dll,例如创建一个新的MSI文件

对。这些Microsoft.Deployment.*DLL被称为“部署工具基础”,它们记录在wix安装的doc文件夹中的dtf.chmdtfapi.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来实现这一点


在任何情况下,以这种方式创建安装程序都需要详细了解。您可以下载wix的源代码,这样您就可以使用相同的源代码自己做任何事情。您可以下载wix的源代码,这样您就可以使用相同的源代码自己做任何事情。