• ベストアンサー

プレビュー以外のスクリーンショットをしたいのですが

C++でスクリーンショットをしたいのですが、1度前のスクリーンショットをプレビューして、次はそのウインドウが無効の状態、(ウインドウの下のスクリーン)をキャプチャしたいと思っています。一度ウインドウを非表示にしてスクリーンキャプチャするようにしたのですが、そうすると当然、一瞬画面がちらつくので他の方法を模索しています。検索するにもキーワードが分からず困っております。

質問者が選んだベストアンサー

  • ベストアンサー
  • Oh-Orange
  • ベストアンサー率63% (854/1345)
回答No.2

★こちらにもヒント ・SetLayeredWindowAttributes関数を利用すると出来ます。  α値は255にして使います。    例:  SetLayeredWindowAttributes( hWnd, 0, 255, LWA_ALPHA );

その他の回答 (1)

  • mindatg
  • ベストアンサー率48% (110/227)
回答No.1

何言ってるのかサッパリです。表現がよく分かりません。 プログラムの仕様書かなんかを作ってると仮定してエスパーしてみますと、 対象を非アクティブ状態でPrintScreenキーでキャプチャし、画像を保存する。 対象をアクティブ状態にしてAlt+PrintScreenキーでウインドウのみキャプチャし、先に保存した画像の上に貼り付ける。 でどうでしょうか?

susumine
質問者

補足

すみません。確かに意味不明な質問です。 「スクリーンキャプチャし、フルスクリーンウインドウにはりつけ」 というのを60FPSで常に更新する、つまり「虫眼鏡ツール」に似た機能のアプリケーションというのが目標なのですが、WinAPIのGetDC(0)を使うと、当然プレビューをしているフルスクリーンウインドウを取り込んでしまうため、解決策を模索しています。 プレビューのウインドウを非表示にしてスクリーンキャプチャし、貼りなおすものだと画面がちらついてしまいます。 解決できる関数などあればお教えいただきたいです。 ちなみに現状ではWinAPIのみで行っております。

関連するQ&A

専門家に質問してみよう