C# 以编程方式查明系统是否支持待机

C# 以编程方式查明系统是否支持待机,c#,.net,hibernate,pinvoke,standby,C#,.net,Hibernate,Pinvoke,Standby,Windows XP安装有时会发生这种情况。除非安装了显示器驱动程序,否则不支持待机和休眠等节能操作 系统是否支持hibernate可以检查- 检查备用支持是否有类似的功能?检查所有电源管理功能 有一个IsPwrSuspendAllowed,您可以使用它将机器发送到睡眠或休眠状态。请使用Win32 SetSuspendState函数 但是如果不调用上面的函数&使用GEtLastError()函数获取错误,我就找不到任何可以告诉该模式是否可用的东西 编辑:使用GetPwrCapabilities

Windows XP安装有时会发生这种情况。除非安装了显示器驱动程序,否则不支持待机和休眠等节能操作

系统是否支持hibernate可以检查-


检查备用支持是否有类似的功能?

检查所有电源管理功能


有一个IsPwrSuspendAllowed,您可以使用它将机器发送到睡眠或休眠状态。请使用Win32 SetSuspendState函数

但是如果不调用上面的函数&使用GEtLastError()函数获取错误,我就找不到任何可以告诉该模式是否可用的东西

编辑:使用GetPwrCapabilities函数

在这种情况下,结构系统动力能力返回: 睡眠按钮呈现


这可能会有所帮助。

我认为返回值会告诉用户是否支持sleep1、sleep2和sleep3硬件睡眠状态,而不是windows是否启用了待机模式。