人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

[C++][Windows API]隠れているWindowのスナップショットを取る方法があるか教えてください。

現在FindWindow,GetWindowDC,GetWindowRect,BitBltを使って特定のWindowのスナップショットを取っているのですが、別のWindowに隠れるとうまくいきません。

●質問者: taniguchitomoya
●カテゴリ:コンピュータ
✍キーワード:API BitBlt C++ Windows スナップショット
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● kazu1107
●10ポイント

WM_PAINTを処理するプログラムは、再描画する必要の無い部分はしないということも出来るはずなので、隠れたままの状態ではソフトによって不具合があるかもしれません。

FindWindow()でハンドルを受け取った後、SetActiveWindow()で一度ウィンドウをアクティブにしてから処理をしてみてはいかがでしょうか?

◎質問者からの返答

ご回答ありがとうございます、

アクティブにしなくても良い方法を探しています。


2 ● doorgod
●60ポイント

http://hp.vector.co.jp/authors/VA003525/tips14.htm

Delphiの例ですが、WM_PAINTとDCを与えることで可能なようです。

◎質問者からの返答

この方法ではうまくいきませんでしたが、DCで検索中に自己解決したので終了します。

XP以降にはPrintWindowという関数があり、隠れていても大丈夫なようです。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ