透明なアプリ ウィンドウを別のプロセスのウィンドウの上に配置します。ウィンドウには子コントロールがいくつか含まれています。選択的な透過性のためにカラーキーを使用して、WS_EX_LAYERED ウィンドウを作成します。メイン ウィンドウは完全に透過的であるため、子コントロールのコンテナーとしてのみ機能します。
これは、Aero を使用しない XP および Vista で正常に動作します。ただし、Aero を使用する Vista では、クリックは透明領域を通過しません。私たちは何ができる?
WS_EX_TRANSPARENT を使用すると失敗します。もちろん、独自のコントロールが機能しなくなります。
親ウィンドウ (WS_SHOWWINDOW) を非表示にすることを検討しましたが、それがすべての子を非表示にすることはかなり確信しており、CLIPCHILDREN と CLIPSIBLINGS の組み合わせでウィンドウのサイズを最小サイズに変更すると、同様の方法で失敗します...
助けてくれてありがとう。