4

フォームがユーザーに表示されているかどうかを検出できるソフトウェアを見てきました。これには、最小化されている、別の画面がそれを覆っている、モニターがオフになっている、リモート デスクトップの場合でも、リモート デスクトップ ビューが表示されていないことを認識している、などが含まれる場合があります。アプリケーションで何かが描画されているかどうかに関係していると思います。おそらく、ビデオ ドライバーがこの情報を提供できるのでしょうか?

これを検出するようにアプリケーションを作成するにはどうすればよいですか? これを監視できる Windows メッセージはありますか?

記録のために、言及されたソフトウェアは、複数の監視カメラをリアルタイム (RTSP) でストリーミングするものであり、この機能を使用して、画面が表示されていないときにストリーミングを一時停止するという利点があります.

4

2 に答える 2

2

アプリケーションで何かが描画されているかどうかに関係していると思います。

部分的に隠されているウィンドウ(のメンバーまたはから取得した結果にCanvas.ClipRect等しい) は、再描画する必要があるデバイス コンテキストの一部になります。ハンドラーの外部でのみ呼び出すことができます。rcPaintPAINTSTRUCTGetUpdateRectGetUpdateRectWM_PAINTCanvas.ClipRect

しかし、送信されるペイント メッセージだけに頼ることができるかどうかはわかりません。レミーの提案はより堅牢だと思います。またはすべての組み合わせ。

于 2013-11-07T05:40:14.870 に答える