我试图通过C#在远程PC上获取有关电源选项的以下信息:
我不想改变那些设置:只是阅读它们。
CURRENTUSER\Control Panel\PowerCfg中的注册表没有多大帮助,因为似乎没有人指向上面的设置。
我也尝试过使用PowerEnumerate(),但是找不到使该函数在远程计算机上工作的方法。
如何从远程计算机获取这些设置的值?
发布于 2017-06-02 22:59:55
然而,登记处的计划(不必要地)很复杂:
HKLM\SYSTEM\CurrentControlSet\Control\Power\PowerSettings包含不同设置的GUID值,以及股票计划的AC和DC默认值。
关键
HKLM\SYSTEM\CurrentControlSet\Control\Power\User\PowerSchemes包含对每个设置组和设置的GUID下的电源计划设置所做的任何修改。
HKLM\SYSTEM\CurrentControlSet\Control\Power\User\PowerSchemes\ActivePowerScheme包含当前活动电源方案的GUID。
我当然不会通过注册表更改设置,但我相信您可以阅读它们。
例如,如果您的有源电源方案是高性能的,那么ActivePowerScheme包含8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c。如果你在PowerSchemes\8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c上看到
0012ee47-9041-4b5d-9b77-535fba8b1442
6738e2c4-e8a5-4a42-b16a-e040e769756e
ACSettingIndex REG_DWORD 0x00000e10 (3600)然后你就知道在交流电源上关闭硬盘的时间是3600秒或60分钟。
发布于 2017-06-02 21:48:32
您需要使用Power,下面是示例类PowerManager.cs,并查看电源方案管理MSDN
编辑:您希望从远程PC中获取详细信息的内容,您可以在窗口服务中安装您的程序,通过它您可以读取更新。
https://stackoverflow.com/questions/44337552
复制相似问题