win7 息屏检测代码
时间: 2023-09-11 20:11:42 浏览: 43
以下是Win7平台下的C++代码,可以检测屏幕是否处于息屏状态:
```c++
#include <Windows.h>
bool isScreenSaverRunning() {
BOOL res;
SystemParametersInfo(SPI_GETSCREENSAVERRUNNING, NULL, &res, NULL);
return res;
}
bool isScreenOff() {
HANDLE hConsole = CreateFile(_T("CONOUT$"), GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
DWORD bytesReturned;
BOOL res = DeviceIoControl(hConsole, IOCTL_CONSOLE_GET_STATE, NULL, 0, NULL, 0, &bytesReturned, NULL);
CloseHandle(hConsole);
return !res;
}
int main() {
while (true) {
if (isScreenSaverRunning() || isScreenOff()) {
printf("Screen is off.\n");
} else {
printf("Screen is on.\n");
}
Sleep(1000);
}
return 0;
}
```
该代码通过调用`SystemParametersInfo`函数获取当前屏幕保护程序是否正在运行,通过调用`DeviceIoControl`函数获取当前屏幕是否处于息屏状态。然后在一个死循环中不断检测屏幕状态,并输出结果。
相关推荐
![apk](https://img-home.csdnimg.cn/images/20210720083646.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)
![slx](https://img-home.csdnimg.cn/images/20210720083646.png)
![sb3](https://img-home.csdnimg.cn/images/20210720083646.png)