我认为我在 Windows 10 中的以太网驱动程序的电源管理设置中发现了一个错误(参见:控制面板/设备管理器/网络适配器/%我的以太网卡%/属性/电源管理)。
通常它有三个项目(见插入的图片)。如果第一个选项被禁用(变灰)(不允许计算机关闭设备),那么(恕我直言)其他两个选项应该被启用(显示为黑色)(允许计算机唤醒计算机)。我测试了第一个设置,确实做到了它所说的,所以如果它被启用并且计算机进入关机状态,它实际上会关闭 LAN 卡(链接 led 熄灭)。因此,当选中它时,启用 LAN 唤醒功能是没有意义的,因为卡处于无电状态并且无法感知请求。
启用局域网唤醒功能的唯一方法是选中第一个选项,然后选中其他两个选项,然后取消选中第一个选项(将其他两行变灰,但保持选中状态)。在此状态下,它会执行其声明的操作,因此可以通过向计算机发送魔法包来打开计算机。
我想启用“模式匹配唤醒”功能,以便在启动与机器的 TCP 连接时唤醒 PC。但我无法设置此状态(第一个和第三个选项应取消选中,第二个选项应选中)。我尝试以不同的顺序选中和取消选中它们,然后按 OK 保存设置值,但启动后,第二个选项变为未选中,或者第三个选项变为选中。顺便说一句,在 LAN 卡的高级设置中,我启用了“模式匹配唤醒”功能,并取消选中了电源选项中的“打开快速启动(推荐)”设置,但我无法唤醒 PC。
我原本想使用regedit
,但我找不到这个设置。我也尝试过连接到英特尔,但这张卡是 OEM 产品。然后我尝试连接到联想,但他们却对我进行了反复尝试。:)
有人有办法解决这个问题吗?或者有人能让“模式匹配唤醒”功能正常工作吗?
提前致谢!
更新
在网上我找到了如何获取与此设置相关的值:
Get-NetAdapterAdvancedProperty -RegistryKeyword PnPCapabilities -AllProperties
这将返回如下值
Name DisplayName DisplayValue RegistryKeyword RegistryValue
---- ----------- ------------ --------------- -------------
Ethernet -- -- PnPCapabilities {24}
regedit
我使用搜索注册表PnPCapabilities
,发现以下注册表项
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e972-e325-11ce-bfc1-08002be10318}\0001
(最后的 0001 仅适用于我的机器。在其他机器上可以是其他数字)
在这里可以找到PnPCapabilities
,可以编码为:
(第一个选项取反)*8 + (第二个选项取反)* 16 + (第三个选项)* 256
因此,如果我只希望设置第二个,我必须将该值设置为8
。
更新
我试过了,它没有因为 TCP SYN 而唤醒。我做了一些研究,我认为我必须编写一小段代码来将所需的模式上传到 NIC,如果此模式与收到的数据包匹配,PC 就会被唤醒。