我一直在为我的安装程序使用 WixSharp 生成的外部 UI。WixSharp 示例库有一个关于如何创建 WPF 外部 UI 的很好的示例,但我不明白如何提示用户更改我的应用程序的安装路径。显然,我有一个从 GenericSetup 派生的 Setup 类,我可以在调用base.StartInstall()
方法时将参数传递给我的 MSI 文件。但是我怎样才能从我的 MSI 中获取安装目录以首先向用户显示它?
问问题
533 次
1 回答
1
其实很简单。MSI本质上是一个数据库,我们可以读取它。WixSharp 提供了整洁MsiParser
的类,可以读取存储在 MSI 中的一些属性。它可以这样使用:
var msi = new MsiParser(MsiFile);
var dir = msi.GetDirectoryPath("INSTALLDIR");
这个问题最初是由 Oleg Shilo 在github issue thread上回答的
于 2018-07-05T13:43:02.723 回答