ребята, тут такое дело. Изучал WinAPI в MVS C++ 6.0 проблем не было. А в новой студии не удается даже скомпилировать следующий код:))
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow)
{
MessageBox(NULL, "Hello!", "Window", MB_OK);
return 0;
}
при попытке скомпилировать пишет:
'MessageBoxW' : cannot convert parameter 2 from 'const char [7]' to 'LPCWSTR'
не пойму при чем тут UNICODE строка
27 октября 2008 в 23:01
Дмитрий, спасибо и Вам. Сделал так, теперь буду знать
26 октября 2008 в 13:03
Хотите получить бесплатно семизначный номер ICQ? Тогда вам сюда – //freeicq.ru/hochu.php?semiznak=semizn7free
26 октября 2008 в 11:00
идёте в прожект пропертис (глобал) и меняете час сет на мультибайт
25 октября 2008 в 18:00
скорее всего UNICODE определен где-то в опциях проекта, а не прямо в тексте
25 октября 2008 в 18:00
А, все, понятно, большое спасибо за помощь!
25 октября 2008 в 18:00
Ну да, в тексте он не определен, вот мне и не понятно было почему ругается компилятор. Попробую поискать в опциях
25 октября 2008 в 17:05
работает!:)Я почитал, что TEXT определяет строку как UNICODE строку. Получается, что везде теперь необходимо делать именно так? вот я глянул, что можно использовать в проекте кодировку UNICODE предусмотрев специально директиву #define UNICODE. Получается, что она почему-то стоит по умолчанию. Можно ли вернуть кодировку ANSII?
25 октября 2008 в 17:05
макрос TEXT раскрывается в букву L, если определен макрос UNICODE, либо раскрывается в ничто, если этого макроса нет. Буква L перед строковым литералом означает, что он имеет тип const wchar_t*, в противном случае const char*
25 октября 2008 в 17:04
напиши вместо "Hello!"TEXT("Hello!")
и для "Window" так же