在这种情况下,我想安装一个应用程序并在安装时添加防火墙例外,但是当失败时,安装不应该回滚,而是向执行安装的用户/管理员显示通知.
我使用WIX来构建安装程序.到目前为止我所拥有的是安装防火墙例外的以下内容:
<Component Id="fwException" DiskId="1" Guid="guid">
<fw:FirewallException
Name="new firewall exception"
Id="FirewallException"
Port="1234"
Protocol="tcp"
Scope="any"
IgnoreFailure="yes"
>
</fw:FirewallException>
</Component>
Run Code Online (Sandbox Code Playgroud)
一切正常但不回滚,但如何让安装程序在安装结束时显示通知或对话框,通知用户尚未添加防火墙例外.
由于无法在防火墙中添加异常,因此在进行故障排除时可能会产生误导.
我想在某个地方使用?fwException = INSTALLSTATE_ABSENT,但不知道在哪里使用它来获得所需的效果.
任何提示/提示非常感谢.
当 UILevel 属性指示它是交互式安装时,如果没有滚动您自己的自定义操作来提示忽略、重试、取消对话框,我看到大多数安装程序(SQL Server、TFS)处理它的方式是在UI 部分警告您可能存在问题。
他们通常检查的问题是防火墙被禁用,因此无法注册异常。因此,如果您稍后启用防火墙,应用程序将无法运行。
就我个人而言,我处理它的方式是安装程序中的防火墙例外对于 90% 的人来说是一件好事。人们可能正在运行其他防火墙产品,或者防火墙配置稍后可能会更改,因此最好让应用程序本身来检测这一点。