0

我正在使用 WiX,想知道我们是否可以禁用内置对话框中的控件。我的要求是禁用“CustomizeDlg”中的“浏览”按钮。

4

2 回答 2

0

这变得太长了,无法发表评论。如果我们获得有关您的方案的更多信息,我可能会“发展”它作为答案。只是给你几个提示。

如果您试图阻止安装程序安装到非标准路径,那么您应该考虑这样一个事实,即msiexec.exe当安装程序以静默模式安装时,可以在命令行中设置安装目录。样品(未经我测试 - 我发现的第一件事:-))。

我想如果它以静默模式安装到非标准路径,可以使用自定义操作来中止设置?我猜是在某处之前的即时模式自定义操作,InstallInitialize但在花费操作(、、、、CostInitializeCostFinalize)之后- 但坦率地说,为什么要这样做?也许您可以阐明您的用例?FileCostInstallValidate

哦,请不要让标准操作RemoveExistingProducts在您的自定义操作之前运行(在 中InstallExecuteSequence)。这将删除盒子上现有的相关安装(如果有),然后中止主要升级操作,盒子上不会留下任何安装。

并且不要将您的自定义操作添加到用户界面序列中 - 没有必要。此序列在静默安装模式下完全跳过,如果无法在 GUI 中设置自定义路径,则无论如何都无法更改(如果无论如何设置,InstallExecuteSequence 的自定义操作将捕获任何更改 - 它会做)。

于 2018-01-22T22:06:37.827 回答
0

根据这个讨论如何启用按钮的线程,您需要做的是相反的事情:确保您的Feature元素不指定 a ConfigurableDirectory,或者通过在标识符中使用一些小写字母来确保它不是公共的。

于 2018-01-23T13:55:27.610 回答