你可以嘗試使用xset (user preference utility for X)
與-q
標誌:
的q選項爲您提供了當前設置信息。
我已經寫了使用該命令並解析輸出簡單的程序:在我的筆記本結果與輸出
#include <cstdlib>
#include <iostream>
bool is_monitor_present() {
int result = system("xset -q | tail -n1 | grep 'Monitor is On'");
return result == 0;
}
int main() {
bool found = is_monitor_present();
if(found) {
std::cout << "Monitor is present." << std::endl;
} else {
std::cout << "Monitor absent." << std::endl;
}
}
的Linux操作系統Ubuntu 15.04執行:
監視器存在。在我的覆盆子
相同的代碼,最多最新的有或幾乎跟上時代的Raspbian:
XSET:無法打開顯示「」
監視器缺席。
我不建議在生產中使用此代碼,但對於某些測試似乎工作正常。至少在Debian上。
我想你應該接受其中一個答案,如果它爲你提供了足夠的信息。 – tommus