Tom*_*ies 10 windows installer firewall popup
我的组织生成一套利用网络的Windows应用程序,因此当用户第一次运行我们的软件时,Windows防火墙(如果它正在运行)会弹出一个弹出窗口,通知用户我们的应用程序(s) )正在尝试使用网络,提示用户允许或拒绝访问.
这种情况发生在很多其他应用程序(Spotify,举个例子),但是我们希望阻止这些弹出窗口的发生,因为它们对我们的用户来说可能有点问题.某些应用程序(MSN Messenger,GoogeTalk)在没有使防火墙提醒用户的情况下运行,我们也希望这样做.
我们已经在Windows XP上成功完成了此操作,方法是让我们的安装程序在
HKLM\SYSTEM\ControlSet001 \服务\ SharedAccess \参数\ FirewallPolicy\StandardProfile\AuthorizedApplications \目录
但是,这对Windows 7没有同样的效果 - 防火墙弹出窗口仍然存在.
有什么想法我们怎么做到这一点?(我们的安装程序和软件都经过数字签名.)
谢谢汤姆戴维斯
您可以通过外壳到Windows内置的实用程序netsh来向Windows防火墙添加例外,但该实用程序在Windows XP和Windows 7上的工作方式不同.以下是我使用的命令:
加:
netsh firewall add allowedprogram mode=ENABLE profile=ALL name=[exception name] program=[program path]
去掉:
netsh firewall delete allowedprogram profile=ALL program=[program path]
加:
netsh advfirewall firewall add rule action=allow profile=any protocol=any enable=yes direction=[in|out] name=[exception name] program=[program path]
去掉:
advfirewall firewall delete rule profile=any name=[exception name]
我实际上建议不要将此问题作为安装程序问题,原因如下:
那里有多个软件防火墙; 你无法对所有这些进行编码和测试.
某些(例如内置的Windows防火墙)具有API,在禁用FW时不允许您配置端口例外.
如果用户稍后启用FW,则会再次进行冲洗.
可能还有外部防火墙可以帮助您.
相反,我更喜欢将其作为文档工作,以便用户和管理员充分了解网络要求.我曾经不得不去苹果的网站找出iTunes所需的端口,我向上帝发誓,他们很难找到,因为他们试图为消费者软化一切.
但是,如果您想在安装过程中给予最大的信任,WiX有一个自定义操作扩展,用于与防火墙交互,而不是编写您自己的自定义操作.即使您使用其他工具(如InstallShield),也可以将此行为包装在WiX合并模块中,然后使用您选择的主要工具将其消耗.
你可以在这里阅读:
和
| 归档时间: |
|
| 查看次数: |
8136 次 |
| 最近记录: |