![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 13.04.2009
Сообщений: 117
|
![]()
Где находятся настройка которая воспринимает исходный код проекта как Unicode.
когда создавался проект (в наследство досталось) была снята галочка использовать Unicode как вернуть? Спасибо. Visual Studio 2008 Visual C++ MFC Application. |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 13.04.2009
Сообщений: 117
|
![]()
Вроде поставил галочку в юникод, но ессено возникли ошибки при конвертировании
e:\verticaltree - c++\customverticaltree.cpp(75) : warning C4101: 'pFont' : unreferenced local variable e:\verticaltree - c++\customverticaltree.cpp(205) : error C2664: 'CVerticalTree::DrawItemText' : cannot convert parameter 3 from 'CString' to 'const char *' No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called e:\verticaltree - c++\customverticaltree.cpp(241) : error C2664: 'CVerticalTree::DrawItemText' : cannot convert parameter 3 from 'CString' to 'const char *' No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called VerticalTreeDlg.cpp e:\verticaltree - c++\verticaltreedlg.cpp(130) : warning C4566: character represented by universal-character-name '\u018F' cannot be represented in the current code page (1251) e:\verticaltree - c++\verticaltreedlg.cpp(130) : error C2440: '=' : cannot convert from 'const char [3]' to 'LPWSTR' Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast e:\verticaltree - c++\verticaltreedlg.cpp(159) : error C2440: '=' : cannot convert from 'char [256]' to 'LPWSTR' Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 18.03.2009
Сообщений: 89
|
![]()
Там есть два типа символов - однобайтовые обычные char (НЕ юникодные), а также двухбайтовые wchar_t (юникодные).
Если в проекте используется юникод, все строки CStirng начинают работать на юникодных wchar_t и, соответственно, возвращать указатель не char*, а wchar_t*. Так что в своих функциях надо использовать тоже указатель на соответствующий тип. Чтобы не париться о том, какое у тебя приложение - юникодное или нет, где-то в заголовочных файлах студии определен специальный тип TCHAR. В не юникодных приложениях он соответствует обычному char, в юникодных - wchar_t. Так что если везде использовать его, вопрос о переключении юникода/не юникода отпадает. Только надо быть аккуратным. |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 13.04.2009
Сообщений: 117
|
![]()
Спасибо, разобрался.
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Unicode | Pedro | Общие вопросы Delphi | 8 | 13.03.2009 10:50 |
Unicode в Listboxe | ЯИмя | Microsoft Office Excel | 9 | 23.02.2009 16:17 |
Unicode в Delphi | Fedorovich | БД в Delphi | 2 | 31.10.2008 21:34 |
Unicode и Delphi | BOBAH13 | Общие вопросы Delphi | 3 | 27.09.2008 13:08 |
Unicode | }{UTPUU | Общие вопросы Delphi | 4 | 02.04.2007 15:21 |