检查计算机是否已批量插入交流电源

Jak*_*lat 7 batch-file windows-7

如何检查计算机是否在Windows 7中的批处理文件中插入交流电源,就像on_ac_power在Linux中一样?

Jon*_*ght 8

有一种直接的批处理文件方式:

WMIC Path Win32_Battery Get BatteryStatus
Run Code Online (Sandbox Code Playgroud)

使用这个和一些find/ errorlevel魔法,你应该能够把它变成一个条件.

  • 刚刚找到它,请参阅 https://msdn.microsoft.com/en-us/library/aa394074(v=vs.85).aspx 上的“BatteryStatus”。 (2认同)

seh*_*ehe 6

一个快速的谷歌1拖了起来

这是 - 令人印象深刻 - 该工具的C源代码:)

#include <windows.h>

int main() 
{
    SYSTEM_POWER_STATUS status;
    GetSystemPowerStatus( &status );
    return status.ACLineStatus;
}
Run Code Online (Sandbox Code Playgroud)

希望有所帮助


1 http://www.google.com/search?q=windows%20powershell%20battery%20mains%20status

2注意:由于我没有Windows,因此在Linux上交叉编译.它虽然在葡萄酒下工作,但输出:

$./battery.exe 
255%   ->   
Amount of time remaining is unknown