C ++: Как установить новый wndProc для консольного приложения?
Если у меня есть консольное приложение с ручкой, настроенной так;
HWND hWnd = GetConsoleWindow();
Тогда как мне установить новый wndProc для окна?
Я пытался с помощью
SetWindowLong(hWnd, GWL_WNDPROC, (LONG)conProc);
При этом conProc определяется как
LRESULT CALLBACK conProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
switch(msg)
{
case WM_NCHITTEST:
return HTCAPTION;
}
return DefWindowProc(hWnd, msg, wParam, lParam );
}
Но это нет работает и говорит "Код ошибки: 5 - доступ запрещен " наGetLastError()
Я понимаю, что этодовольно сложно изменить консольное приложение, так как оноЭто приложение csrss.exe и все, но яЯ все еще хотел бы попробовать .. Спасибо.