回答編集履歴

1

追記

2017/09/10 02:49

投稿

catsforepaw
catsforepaw

スコア5938

test CHANGED
@@ -37,3 +37,17 @@
37
37
 
38
38
 
39
39
  最初に「通常の方法では無理」と書きましたが、では通常ではない方法があるのかというと、DLLインジェクションやらグローバルフックやらでAPIフックを噛ましてUpdateLayeredWindowを横取りし、hdcSrcで渡された画像データをこっそりコピーしてプロセス間通信で受け渡す、という方法が考えられなくもないです。ただし、UpdateLayeredWindowはWM_PAINTと違って任意のタイミングで自発的に呼び出すものなので、外部からは思い通りのタイミングで呼び出してくれないかもしれません。
40
+
41
+
42
+
43
+ ---
44
+
45
+ 追記
46
+
47
+
48
+
49
+ 書いた後で思い出したのですが、DWMのAPIを使えばできるかもしれません。だいぶ前に何かの調べ物をしていたときに、DWMにはウィンドウに表示されている画像を取得する手段があったような記憶がありますが、すっかり忘れています。
50
+
51
+ 私自身は試したことがないので詳しい説明は別の方にお任せします。
52
+
53
+