使用wix创建的MST没有更新的摘要信息流值。
//The temp msi (copy of original msi) has updated summary info values
Database d2 = new Database(tempmsiPath, DatabaseOpenMode.Direct);
//origDatabase is a Database object of original msi;
d2.GenerateTransform(origDatabase, mstPath);
//this code is used to create the mst.
d2.CreateTransformSummaryInfo(origDatabase, mstPath,
TransformErrors.None,TransformValidations.None);
请告诉我如何使用C#实现向MST编写更新的汇总值。
答案 0 :(得分:0)
如果我在ORCA中打开MSI,请创建一个新转换,然后转到摘要信息,所有字段都显示为灰色。
如果我转到(在ORCA中)转换|转换属性我得到一个标题为“Transform SummaryInfo”的屏幕。它有一系列用于抑制错误和验证的复选框。这映射到CreateTransformSummaryInfo中可用的参数。阅读相同方法的DTF帮助主题说:
创建并填充现有的摘要信息流 转换文件,并用base和。填充属性 参考ProductCode和ProductVersion。
在.... WindowsInstaller.Package程序集中还有一个TranformInfo类,但它只支持读取转换信息。 Rob可能会告诉你更多信息,但设计似乎不提供不受限制的访问权限。可能是因为转换必须与基本MSI兼容。
也许如果我确切地知道您正在更新的内容/原因,我可以给出更好的答案。