Ваше приложение компилируется как приложение Unicode (это определяется в настройках проекта). Это означает, что строки, передаваемые в функции Windows API, должны быть строками с широкими символами, указанными так: L"MyTitleName"
. Вы не можете привести к LPCWSTR, потому что это на самом деле не изменит тип строки, он просто попытается передать строку как нечто, чем это не является.
Этот код должен работать:
wcex.lpszClassName = L"MyTitleName";
// code snipped
wndHandle = CreateWindow(
L"MyTitleName", //the window class to use
L"MyTitleName", //the title bar text
...
Если вы хотите использовать оригинальный код из учебника без его изменения, вы можете отключить режим Юникод: в свойствах проекта перейдите на вкладку «Общие» и установите для Character Set
значение Use Multi-Byte Character Set
. Не делайте этого для любой программы, которая может когда-нибудь поддерживать другие языки.