我正在尝试使用win32 api启动和停止Windows XP中的防火墙,以更改注册表中的设置,即HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile
。我正在尝试更改数据值,但它没有改变。那么可以告诉我如何在Windows XP中停止防火墙?
答案 0 :(得分:1)
你为什么要停止防火墙? 您是否从使用其他方法的codeproject查看了这篇文章?
编辑:来自here。
有几种解决方案可用于禁用防火墙 以编程方式提取SP2 EXE文件。
以下是两种方式:
1)添加提到的注册表值,也可以这样做 安装SP2之前或之后
自我发布该帖子后,注册表项路径发生了变化(现在是WindowsFirewall而不是FirewallPolicy):
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall\DomainProfile
\EnableFirewall=0 (DWORD data type)
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall\StandardProfile
\EnableFirewall=0 (DWORD data type)
如果您想要禁用该服务:
sc.exe config SharedAccess start = disabled
2)以下命令行将禁用SP2的防火墙(必须是 在安装SP2并且至少完成一次重新启动后运行:
netsh.exe firewall set opmode mode=disable profile=all
答案 1 :(得分:0)
你在运行什么服务包?微软喜欢重新定位这些密钥...... ;-)
检查
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall\DomainProfile\EnableFirewall=0
(DWORD数据类型)
和
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall\StandardProfile\EnableFirewall=0
(DWORD数据类型)
停止服务最好;-)