ハンドル付きのコンソールアプリケーションがある場合は、そのように設定します。
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アプリケーションであるため、変更するのはかなり難しいことを理解していますが、それでも試してみたいと思います。ありがとうございます。