FindWindow Win32 - PullRequest
       103

FindWindow Win32

0 голосов
/ 02 февраля 2020

Моя кодировка не работает, что здесь не так ??? Я попытался установить мое окно как «Dmo» (Игра), но когда я использую этот код, у меня есть 31 Ошибка, например: Код серьезности Описание Project File Suppress Line Error Error CS0103 Имя «NULL» не существует в текущем контекст Или: Код серьезности Описание Проект Состояние ошибки подавления строки файла CS0246 Не удалось найти тип или имя пространства имен 'HBITMAP' (отсутствует директива using или ссылка на сборку?)

class Win32
void CaptureWindow()
{


RECT rc;
HWND hwnd = ::FindWindow(0, _T("Dmo"));//::FindWindow(0,_T("ScreenCapture (Running) - Microsoft Visual Studio"));//::FindWindow(0, _T("Calculator"));//= FindWindow("Notepad", NULL);    //You get the ideal?
if (hwnd == NULL)
{
    return;
}
GetClientRect(hwnd, &rc);

//create
HDC hdcScreen = GetDC(NULL);
HDC hdc = CreateCompatibleDC(hdcScreen);
HBITMAP hbmp = CreateCompatibleBitmap(hdcScreen,
    rc.right - rc.left, rc.bottom - rc.top);
SelectObject(hdc, hbmp);

//Print to memory hdc
PrintWindow(hwnd, hdc, PW_CLIENTONLY);

//copy to clipboard
OpenClipboard(NULL);
EmptyClipboard();
SetClipboardData(CF_BITMAP, hbmp);
CloseClipboard();

//release
DeleteDC(hdc);
DeleteObject(hbmp);
ReleaseDC(NULL, hdcScreen);

//Play(TEXT("photoclick.wav"));//This is just a function to play a sound, you can write it yourself, but it doesn't matter in this example so I comment it out.
}
...