Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Visual C++/MFC/WTL > Character Set


Автор: demmm 28.8.2007, 14:04
Доброго времени суток, у меня есть вопрос (может он и глупый, но все равно пока что не могу найти на него ответ)

У меня есть MFC-приложение(VС++ 2005), в его настройках у меня стоит Character Set- Use Multi-Byte Character Set (то есть  property Pages  -  General  -  Character Set  -  Use Multi-Byte Character Set )

Мне надо поменять Use Multi-Byte Character Set на Use Unicode Character Set, я поменял.
Но полсе этого у меня во время компиляции начались ошибки, на пример

Error    2    error C2664: 'CWnd::SetDlgItemTextW' : cannot convert parameter 2 from 'const char [15]' to 'LPCTSTR

Вот строчка в которой ошибка: SetDlgItemText(IDC_STATIC, "Server started");

Так вот мой вопрос состоит в том как от нее озбавиться, до этого все работало.........
Спасибо!

Автор: zkv 28.8.2007, 14:25
demmm, просто на просто нужно обернуть таким образом все строки в программе:
SetDlgItemText(IDC_STATIC, _T("Server started") );

Автор: demmm 28.8.2007, 14:33
Ага, заработало......Спасибо!

Автор: zkv 28.8.2007, 14:54
Цитата(zkv @  28.8.2007,  14:25 Найти цитируемый пост)
SetDlgItemText(IDC_STATIC, _T("Server started") );

поленился сразу сказать. вообще то _T() лучше использовать всегда. В зависимости от настроек проекта он превращает строку в юникодную или нет.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)