Трудности перевода проекта с С на Visual Studio 2005 С++

  • Автор темы IPSergik
  • Дата начала
I

IPSergik

#1
Появилась необходимость перевести проект с С на Visual Studio 2005 С++...
Появились непонятные ошибки. Если что - не судите строго за возможную простоту их решения (давно уже это было... вот сейчас восстанавливаю забытые знания да и с Visual Studio 2005 не знаком).

Ошибки:
wc.lpszClassName = "Freel"; - error C2440: '=' : cannot convert from 'const char [9]' to 'LPCWSTR'
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast

if (!TranslateAccelerator(hwndDlg,hAccelTable,&msg)) - cannot convert parameter 2 from 'HANDLE' to 'HACCEL'
Conversion from 'void*' to pointer to non-'void' requires an explicit cast

hMenu = GetSubMenu (hMenu, 0) ; - cannot convert parameter 1 from 'HWND' to 'HMENU'
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
 

shisik

Well-known member
26.08.2007
154
0
#2
Самое простое, что можно сделать. 1:
Код:
strcpy(wc.lpszClassName, "Freel");
2:
Код:
if (!TranslateAccelerator(hwndDlg,hAccelTable, (HACCEL) &msg))
3:
Код:
hMenu = (HMENU) GetSubMenu(hMenu, 0);
 

SunSanych

Well-known member
28.06.2006
71
0
#4
Маленькое уточнение:
В 2005-ой Visual Studio вместо _TEXT() нужно использовать макрос _T(x).
_T(x) объявлен в tchar.h