組み込みシステムに接続されたモニターの解像度やその他の設定を制御する C++ で記述されたカスタム アプリケーションがあります。場合によっては、システムがヘッドレスで起動され、VNC 経由で実行されますが、後で (起動後に) モニターを接続することができます。その場合、モニターが有効になるまで、モニターにはビデオが供給されません。「displayswitch /clone」を呼び出すとモニターが起動することがわかりましたが、モニターがいつ接続されたかを知る必要があります。5 秒ごとに実行されてモニターを探すタイマーがありますが、モニターが接続されているかどうかを通知できる API 呼び出しが必要です。
これは、私が何を求めているかを説明するためのちょっとした疑似コードです (タイマーが 5 秒ごとに期限切れになったときに実行されるもの)。
if(If monitor connected)
{
ShellExecute("displayswitch.exe /clone);
}else
{
//Do Nothing
}
モニターの数を返そうとGetSystemMetrics(SM_CMONITORS)
しましたが、モニターが接続されているかどうかにかかわらず1を返します。他のアイデアはありますか?
ありがとう!