Мне любопытно, что можно создать окно без использования WndProc.
Итак, я хотел бы зарегистрировать класс окна с полем lpfnWndProc, установленным в NULL;
И используя msg (который дает TranslateMessage (& msg)) по-своему.
Есть ли у этого недостатки?
Спасибо, извините за мою грамматику.
Редактировать # 1:
Окей, у меня есть окно, но я где-то ошибаюсь.
MSG msg;
while(PeekMessage(&msg,NULL,NULL,NULL,PM_REMOVE)) {
if (msg.message == WM_QUIT) return false;
else {
TranslateMessage(&msg);
switch (msg.message) {
case WM_CREATE:
createContext();
break;
default:
DispatchMessage(&msg);
break;
}
}
}
return true;
createContext не вызывается.
Зачем? Где я не прав?
Да, может быть, сообщение WM_CREATE должно быть отправлено в WndProc (теперь DefWindowProc), но есть ли способ получить его снаружи от WndProc?