我正在制作一个简单的 Windows 程序,但由于某种原因RegisterClass返回FALSE,我不知道为什么。
我设置了结构的lpszClassName、hInstance和成员。lpfnWndProcWNDCLASS
这是我的代码:
#include <windows.h>
#include <tchar.h>
template<typename T>
class BaseWindow {
public:
static LRESULT CALLBACK WndProc(HWND hwnd, UINT umsg, WPARAM wparam, LPARAM lparam) {
T* pThis = NULL;
if (umsg == WM_NCCREATE) {
CREATESTRUCT* pCreate = (CREATESTRUCT*)lparam;
pThis = (T*)pCreate->lpCreateParams;
SetWindowLongPtr(hwnd, GWLP_USERDATA, (LONG_PTR)pThis);
pThis->m_hwnd = hwnd;
} else {
pThis = (T*)GetWindowLongPtr(hwnd, GWLP_USERDATA);
}
return pThis->HandleMessage(umsg, wparam, lparam);
}
HWND m_hwnd;
BOOL cls_state = FALSE;
BOOL Init() …Run Code Online (Sandbox Code Playgroud)