2011-02-04 56 views

回答

0

建议的方法是使用两个不同的自定义操作:

  • 一个在安装UI读取数据(注册表值)InstallExecuteSequence其他
  • (在安装过程中)将数据写入

这样你就不应该有权限问题。

+1

InstallUtil自定义操作可能会读取注册表,但无法设置任何属性。因此,您无法为第二个自定义操作设置CustomActionData以进行读取。 – 2011-02-04 16:05:43

0

有没有一个可能的理由想要这样做。安装程序类自定义操作无法访问MSI句柄。这意味着他们无法获得/设置属性。唯一可用的是更改机器的配置,并违反所有Windows Installer最佳实践,以便在用户界面序列中执行此操作。

应该在UI中的按钮上完成的唯一一件事是在进入下一个对话框之前必须完成的验证处理。一个例子是验证用户输入,例如连接到SQL服务器的证书。连接到SQL服务器和执行某些操作的繁重工作应该作为执行顺序中的延迟自定义操作完成。

我建议看看WiX DTF。这暴露了更多的功能,然后安装程序类自定义操作,并允许您创建遵循最佳实践的解决方案。

相关问题