防火墙启动/停止使用win32 api for windows XP os

时间:2009-08-24 06:30:14

标签: windows winapi windows-xp firewall

我正在尝试使用win32 api启动和停止Windows XP中的防火墙,以更改注册表中的设置,即HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile。我正在尝试更改数据值,但它没有改变。那么可以告诉我如何在Windows XP中停止防火墙?

2 个答案:

答案 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数据类型)

停止服务最好;-)