导致出现此问题的原因可能是 SharedAccess.reg 文件丢失或已损坏。SharedAccess.reg 文件表示 Windows 防火墙服务。
解决方法:
方法 1:调用“Setup API InstallHinfSection”函数以安装 Windows 防火墙
要安装 Windows 防火墙,请按照下列步骤操作:
- 单击“开始”,单击“运行”,键入 cmd,然后单击“确定”。
- 在命令提示符处,键入下面的命令行,然后按 Enter:
Rundll32 setupapi,InstallHinfSection Ndi-Steelhead 132 %windir%/inf/netrass.inf
- 重新启动 Windows。
- 单击“开始”,单击“运行”,键入 cmd,然后单击“确定”。
- 在命令提示符处,键入以下命令并按 Enter:
Netsh firewall reset
- 单击“开始”,单击“运行”,键入 firewall.cpl,然后按 Enter。在“Windows 防火墙”对话框中,单击“启用(推荐)”,然后单击“确定”。
方法 2:将 Windows 防火墙项添加到注册表
警告:如果使用注册表编辑器或其他方法错误地修改了注册表,则可能会出现严重问题。这些问题可能需要重新安装操作系统才能解决。Microsoft 不能保证可以解决这些问题。修改注册表需要您自担风险。
要将 Windows 防火墙项添加到注册表,请按照下列步骤操作:
- 将下列文本复制到“记事本”中,然后将文件另存为 Sharedaccess.reg:
Windows Registry Editor Version 5.00 [-HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/SharedAccess] [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/SharedAccess] "DependOnGroup"=hex(7):00,00 "DependOnService"=hex(7):4e,00,65,00,74,00,6d,00,61,00,6e,00,00,00,57,00,69,00,/ 6e,00,4d,00,67,00,6d,00,74,00,00,00,00,00 "Description"="Provides network address translation, addressing, name resolution and/or intrusion prevention services for a home or small office network." "DisplayName"="Windows Firewall/Internet Connection Sharing (ICS)" "ErrorControl"=dword:00000001 "ImagePath"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,/ 74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,/ 00,76,00,63,00,68,00,6f,00,73,00,74,00,2e,00,65,00,78,00,65,00,20,00,2d,00,/ 6b,00,20,00,6e,00,65,00,74,00,73,00,76,00,63,00,73,00,00,00 "ObjectName"="LocalSystem" "Start"=dword:00000002 "Type"=dword:00000020 [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/SharedAccess/Epoch] "Epoch"=dword:00002cd0 [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/SharedAccess/Parameters] "ServiceDll"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,/ 00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,/ 69,00,70,00,6e,00,61,00,74,00,68,00,6c,00,70,00,2e,00,64,00,6c,00,6c,00,00,/ 00 [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/SharedAccess/Parameters/FirewallPolicy] [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/SharedAccess/Parameters/FirewallPolicy/DomainProfile] [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/SharedAccess/Parameters/FirewallPolicy/DomainProfile/AuthorizedApplications] [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/SharedAccess/Parameters/FirewallPolicy/DomainProfile/AuthorizedApplications/List] "%windir%//system32//sessmgr.exe"="%windir%//system32//sessmgr.exe:*:enabled:@xpsp2res.dll,-22019" [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/SharedAccess/Parameters/FirewallPolicy/StandardProfile] [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/SharedAccess/Parameters/FirewallPolicy/StandardProfile/AuthorizedApplications] [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/SharedAccess/Parameters/FirewallPolicy/StandardProfile/AuthorizedApplications/List] "%windir%//system32//sessmgr.exe"="%windir%//system32//sessmgr.exe:*:enabled:@xpsp2res.dll,-22019" [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/SharedAccess/Setup] "ServiceUpgrade"=dword:00000001 [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/SharedAccess/Setup/InterfacesUnfirewalledAtUpdate] "All"=dword:00000001 [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/SharedAccess/Enum] "0"="Root//LEGACY_SHAREDACCESS//0000" "Count"=dword:00000001 "NextInstance"=dword:00000001
- 双击“Sharedaccess.reg”以将此文件的内容并入到注册表中,并创建 Windows 防火墙注册表项。
- 重新启动 Windows。
- 单击“开始”,单击“运行”,键入 cmd,然后单击“确定”。
- 在命令提示符处,键入以下命令并按 Enter:
Netsh firewall reset
- 单击“开始”,单击“运行”,键入 firewall.cpl,然后单击“确定”。
- 配置要使用的 Windows 防火墙设置。
如果上述方法不起作用,请重新安装系统。