请问电脑如何判断HDMI接的屏幕是打开的?
目前在车间有放电视墙展示生产状况
但有时会有停电或是人为不小心关闭屏幕情况
导致每天都要去现场巡视
请问有办法用程序或是其它方式,能知道电脑连接的HDMI屏幕是否打开状态吗?
试下写个 demo 程序来监控。断电情况(程序挂掉),发送告警到微信、钉钉等;屏幕关闭情况,根据 GetSystemMetrics(SM_CMONITORS)
获取屏幕数量。
现在gpt那么火,润色下:你作为一个资深windows开发,试下写个 exe程序来监控以下两个情况。1. 断电情况(程序挂掉),发送告警到微信、钉钉等;2. 多个屏幕时,有一个屏幕关闭情况,根据 GetSystemMetrics(SM_CMONITORS) 获取屏幕数量,发送告警。大概程序就有了:
ps:但是断电情况,还是你自己在其他机器人写个脚本,老老实实地 ping 去吧~
#include <Windows.h>#include <iostream>#include <fstream>#include <string>#include <vector>#include <urlmon.h>#pragma comment (lib, "urlmon.lib")bool IsProgramRunning(const TCHAR* szExeName){ // 创建快照 HANDLE hSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); if (hSnap == INVALID_HANDLE_VALUE) { return false; } PROCESSENTRY32 pe32; pe32.dwSize = sizeof(PROCESSENTRY32); // 检查每个进程 if (!Process32First(hSnap, &pe32)) { CloseHandle(hSnap); return false; } do { if (_tcsicmp(pe32.szExeFile, szExeName) == 0) { CloseHandle(hSnap); return true; } } while (Process32Next(hSnap, &pe32)); CloseHandle(hSnap); return false;}void SendAlert(const std::string& message){ // TODO: implement code to send alert message to WeChat or DingTalk}void CheckProgramAndMonitors(){ // 监控目标程序的状态 while (true) { if (!IsProgramRunning(_T("your_program.exe"))) { // 目标程序已退出,发送报警信息 SendAlert("Your program has terminated unexpectedly"); } // 检查屏幕数量 int monitorCount = GetSystemMetrics(SM_CMONITORS); // 如果屏幕数量小于预期值,发送报警 if (monitorCount < 2) { SendAlert("One of the monitors has been disconnected"); } Sleep(5000); // 每隔5秒检查一次 }}int main(){ CheckProgramAndMonitors(); return 0;}
一般来说,电脑无法直接检测HDMI屏幕是否打开。HDMI是一种用于传输视频和音频信号的接口,它并不包含任何关于设备状态(例如打开或关闭)的信息。
然而,你可以通过一些间接的方式来推断HDMI屏幕是否打开。以下是一些可能的方法:
以上只是一些可能的方法,具体的实现方式取决于你的设备和环境。希望这些信息能帮助你解决问题。
问题内容: 在Linux中使用屏幕时,如何确定我是否在屏幕中?如果可以,我可以退出屏幕,但是如果没有,那么我将关闭终端。 在执行操作时,我可以查看是否还连接了其他屏幕,但是如何知道我的当前终端是否是这些已连接屏幕之一? 问题答案: 检查。如果为空,则您位于“真实”终端上。如果包含任何内容,则为您所在屏幕的名称。 如果您不在屏幕上: 如果您在屏幕上:
问题内容: 在终端中工作时,我看到了最后一个Shell命令执行输出的历史记录。如果运行vim,我会看到全屏打开的文件。退出vim时,我可以再次看到最后一个shell命令的历史记录。 但是,当我从屏幕上使用vim时。我在退出vim时看到的是刚刚编辑的文件的足迹,而不是最后一个shell命令的历史记录。 我想看看外壳的历史。 我该如何实现这种行为? 我用了: terminal.app和iterm2.a
函数功能:判断屏幕是否亮屏 函数方法 bool = device.isWake() 返回值 类型 说明 bool string true - 屏幕亮屏,false - 屏幕黑屏 函数用例 bool = device.isWake() if bool then toast("屏幕亮屏",2) mSleep(3000) else toast("屏幕黑屏",2) mSle
前端如何判断用户的 mac 是 arm 还是 x86 https://www.telerik.com/download/fiddler-everywhere 下载 fiddler-everywhere 的时候,它监测到了我的电脑是 arm 怎么实现的?浏览器的 UA 都还是谎称自己是 intel 是通过 js 调用浏览器 API 获得的结果吗?对应的 API 是哪个呢?
问题内容: 我试图弄清楚如何确定一个节点在屏幕上还是屏幕外可见。这仅仅是节点的true / false属性吗?谢谢。(使用swift spritekit) 问题答案: 您可以使用以下命令测试场景中是否有节点: 假设这是一个子类,例如。