9年前いつもお世話になっております。質問なのですが、件名のとおり、他プロセスのウィンドウの表示内容(クライアント領域、非クライアント領域の両方)を一定間隔(500msくらい)で取得し、自ウィンドウのクライアント領域に描画したいのです。回このような感じです(AAA.exeのウィンドウにマインスイーパのウィンドウが描画されている)。回のように、覆いかぶさったウィンドウごと取得してしまうのです。対象ウィンドウが最小化されていたり、画面外にはみ出していたりすると、その部分が黒くなっています。PrintWindow関数を使ってもみたのですが、長時間にわたって連続で呼び出していると対象のウィンドウの表示内容が崩れしまい、この方法は使えませんでした。画面全体のデバイスコンテキストを取得していませんか?対象のウィンドウのデバイスコンテキストを取得して描画したら、ウィンドウが重なっていても、問題なく描画できましたよ。描画するものですけど、これでウィンドウが重なってもいけました。ウィンドウを3重に重ねてもいけました。ご回答ありがとうございます!せっかくコードを提示していただいたのですが、私の環境ではウィンドウが覆いかぶさった状態のものが表示されてしまいました...。C++のデバイスコンテキストを500ms間隔で取得し、AAA.exe(自プロセス)のクライアントエリアに描画しているのですが、やはり覆いかぶさったウィンドウ(この画像の場合ではAAA.exeのウィンドウ)ごと表示されてしまいます。コードは次のようにしました。Vista以降はメインウインドウごとに描画バッファを持つようになったことが関係してるのではないでしょうか。Vista以降はウインドウの見えない部分も描画されて保持されています。XP以前はウインドウの見えないところは本当に描かれていない(上書きされて失われている)ので対象のアプリに再描画してもらう以外に取得する方法はありません。Vista以降はウインドウの見えない部分も描画されて保持されています。XP以前はウインドウの見えないところは本当に描かれていない(上書きされて失われている)ので対象のアプリに再描画してもらう以外に取得する方法はありません。そのような事情があったのですか...。なると、ウィンドウの描画内容を取得するのは難しそうですね。9年前それは知らなかった・・・。アクティブにして取るとかしかなさそうですね。追記:そんな方法があったのか。9年前レイヤードウインドウにするとブレンド処理用にバッファが用意されるのですね。そんな副作用があったとは。良いことを知りました。ミクプラは自由にリンクできます。