6

スクリーンショットを最小化したウィンドウを印刷するにはどうすればよいですか?Windowsのタスクバーは最小化されていてもウィンドウのプレビューを作成できるので、それは可能だと思います。

4

2 に答える 2

4

この男はあなたが求めていることを正確に行うことができました:http://www.codeproject.com/Articles/20651/Capturing-Minimized-Window-A-Kid-s-Trick この質問は本当に古いことは知っていますが、それでも可能です誰かのために有効である。

于 2013-07-20T22:57:14.640 に答える
3

少なくともあなたのような外部アプリケーションでは、これは不可能だと私はかなり確信しています。アプリケーションウィンドウが最小化されると、ウィンドウはWM_PAINTメッセージを受信できません(また、受信しません)。つまり、ウィンドウが最小化されている間(または「写真を撮る」)、ウィンドウ自体を再描画するように要求することはできません。これは、Windows APIの制限(またはルール)です。

タスクバーは、キャッシュされたイメージ(DWMがウィンドウを最小化する前に取得した最後のスナップショット)を表示することで「これを回避」するため、実際にはウィンドウの現在の写真を撮影していません。これをテストするには、定期的に更新するアプリケーションを実行してから最小化します。プレビュー画像は、復元されるまで更新されないことがわかります。

これを回避する唯一の方法は、タスクバーが行うことを実行することです。定期的に必要なウィンドウの写真を撮り、最小化されたら、代わりにキャッシュされた画像を使用します。もちろん、これは、アプリが事前にターゲットウィンドウを追跡している必要があることを意味します(ウィンドウのスナップショットを初めて取得するのが最小化されている場合、これは明らかに機能しません)。

于 2009-10-04T22:25:11.307 に答える