我正在使用wix 3.0.i有一个文件夹名称“images”。所以我想将图像中的所有文件复制到msi包中。当我复制所有文件并将msi安装到另一台PC然后它没有绑定图片。当我使用简单的文件元素时,文件绑定到msi包。那我应该怎么做,
很快回复我
感谢你 萨米尔
答案 0 :(得分:1)
显然,您希望创建一个可以生成屏幕保护程序安装程序的应用程序,该安装程序包含用户选择的一些图像文件 - 一种专门用于创建屏幕保护程序安装程序的InstallShield应用程序。
我首先要创建一个模板MSI文件(使用wix 或其他东西),大部分 工作。您不知道用户稍后要选择哪些文件,因此添加ID为“UserSelectedFiles”的占位符组件。分发这个 模板MSI文件与您的应用程序。
然后,当用户想要生成一个
新的安装程序,从复制开始
模板。编辑复制的msi,以便它还安装用户选择的文件。您可以使用.NET类执行此操作
你可以在“部署中找到
tools foundation“API。这是wix附带的一组程序集;请看一下
C:\program files\Windows Installer
XML v3\sdk
。
我只使用DTF API来处理一些简单的事情,例如这个计算MSI中的File表条目的例子:
var database = new Database(@"\path\to\some\file.msi");
var list = database.ExecuteQuery("SELECT FileName FROM File");
Console.WriteLine(list.Count);
你的情况会有点复杂。您可能需要
Microsoft.Deployment.Compression.Cab
命名空间。Database.Merge