switch(LOWORD(wParam)) { case MENU_EXIT: { PostQuitMessage(0); MessageBox(g_hWnd,L"MENU_EXIT",L"",MB_OK); return 0; } ......
красный крестик и alt+f4 это wm_close а не wm_destroy в ответ можно или вернуть 0 тогда приложение не закроется или отдать в defwindowproc что Вы...
кстати а какой смысл в том что в C++ указателю void * можно присвоить любой тип указателя а обратно нельзя ? в С и туда и обратно можно
и вот еще из той же книги
если grep'ом пройтись по папке с исходниками CRT в поисках вызовов _getptd сразу видно небезопасные функции _getptd _getptd _getptd _getptd...
а сейчас когда в с99 много разных новых свойств которые с++ никогда не скомпилит заведомо можно и не беспокоится о совместимости не писать же на...
кстати при использовании CreateThread можно использовать небезопасные функции как пишет Рихтер такие функции проверяют на NULL элемент в массиве...
Имена участников (разделяйте запятой).