파이썬으로 비활성화 된 창의 이미지를 캡쳐하는 방법
Python으로 비활성화된 창 이미지를 캡처하려면
pywin32 패키지의
win32gui 및 win32ui 모듈을 사용할 수 있습니다.
다음은 캡처 방법을 보여주는 코드 스니펫의 예입니다.
Capturing an image of a disabled window with Python can be accomplished by using the win32gui
and win32ui
modules from the pywin32
package. Here's an example code snippet that demonstrates how to capture a screenshot of a disabled window:
In this code, we first obtain the handle of the disabled window using FindWindow()
.
We then disable the window using EnableWindow()
to ensure that its contents do not change while we are taking the screenshot.
We get the dimensions of the window using GetWindowRect()
, and create a device context for the window using GetWindowDC()
. We create a compatible device context using CreateDCFromHandle()
, and a compatible bitmap using CreateCompatibleBitmap()
.
We then select the bitmap into the device context using SelectObject()
, and copy the pixels from the window to the bitmap using BitBlt()
.
Finally, we save the bitmap as a file using SaveBitmapFile()
, and clean up the device contexts and handles.
이 코드에서는 먼저 FindWindWind()를 사용하여 비활성화된 창의 핸들을 얻습니다.
그런 다음 EnableWindow()를 사용하여 스크린샷을 촬영하는 동안 내용이 변경되지 않도록 창을 비활성화합니다.
GetWindowRect()를 사용하여 창의 치수를 구하고 GetWindowDC()를 사용하여 창에 대한 장치 컨텍스트를 만듭니다. CreateDCFromHandle()을 사용하여 호환되는 장치 컨텍스트를 만들고 CreateCompatibleBitmap()을 사용하여 호환되는 비트맵을 만듭니다.
그런 다음 SelectObject()를 사용하여 비트맵을 장치 컨텍스트로 선택하고 BitBlt()를 사용하여 창에서 비트맵으로 픽셀을 복사합니다.
마지막으로 SaveBitmapFile()을 사용하여 비트맵을 파일로 저장하고 장치 컨텍스트와 핸들을 정리합니다.
#chatGPT