1

私は現在、画面をキャプチャする必要がある1つの機能を持つライブラリを使用しています。これには、画面を生成したアプリケーションwpfアプリケーションが含まれます。発生する問題は、関数が実行されると (下部のコード)、保存された画像がアプリケーションを無視することです。たとえば、アイコンはまだタスクバーにありますが、表示されず、「背後にある」他のウィンドウは表示されます。アプリ自体が画像の中央にあるように変更できませんでしたが、関係なく変更できませんでした。

using (Bitmap printscreen = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height))
        {
            Thread.Sleep(1000);
            using (Graphics graphics = Graphics.FromImage(printscreen as Image))
            {
                graphics.CopyFromScreen(0, 0, 0, 0, printscreen.Size);
                printscreen.Save(FilePath, ImageFormat.Jpeg);
            }
        }

どんな支援も大歓迎です。

編集:まあ...奇妙なことに、コンピューターを再起動した後、コードは完全に機能し、私の同胞はすべて自分のマシンでも機能していました。以前に何が問題を引き起こしたのかはわかりませんが、もはや問題はないようです存在。

4

2 に答える 2

0

このコードをコンソール アプリで試しましたが、問題はありません。CopyFromScreen() 呼び出しが行われているときに、アプリケーションのウィンドウが最小化されずに表示されていないことを確認してください。

于 2013-11-12T22:18:48.493 に答える