Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Menangkap Tangkapan Skrin Aplikasi Tertentu dalam C#?
Mengambil Tangkapan Skrin Aplikasi Individu dalam C#
Walaupun menangkap tangkapan skrin penuh dengan Graphics.CopyFromScreen()
adalah mudah, menangkap aplikasi tertentu memerlukan teknik yang lebih canggih. Penyelesaian optimum memanfaatkan PrintWindow
fungsi Win32 API. Fungsi ini membolehkan anda menangkap imej tetingkap, tanpa mengira keterlihatannya atau sama ada ia tersembunyi di sebalik tetingkap lain.
Berikut ialah pecahan proses:
GetWindowRect
untuk mendapatkan pemegang (HWND) tetingkap aplikasi yang anda ingin tangkap.PrintWindow
: Panggil fungsi PrintWindow
, menyediakan pemegang tetingkap dan pemegang kepada konteks peranti Windows (HDC). Fungsi ini akan menangkap peta bit tetingkap.Bitmap
dan dapatkan konteks Graphics
nya menggunakan Graphics.FromImage()
. Gunakan GetHdc()
untuk mendapatkan semula HDC bitmap dan hantar ke PrintWindow
.Graphics
untuk mengelakkan kebocoran sumber.Kaedah ini memastikan anda boleh menangkap tangkapan skrin tepat bagi aplikasi sasaran, walaupun ia dikaburkan sebahagian atau sepenuhnya.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menangkap Tangkapan Skrin Aplikasi Tertentu dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!