Проверьте, поддерживает ли проект Visual C++ 6.0 юникод или нет?

Мне нужно знать, поддерживает ли проект Visual C++ 6.0 Unicode или нет. Как я могу это проверить?


person nguyen    schedule 08.05.2012    source источник
comment
Почему люди не вычитывают свои вопросы...   -  person Thorsten Dittmar    schedule 08.05.2012
comment
Потому что им все равно.   -  person Cody Gray    schedule 08.05.2012
comment
возможный дубликат поддерживает ли визуальный С++ 6.0 юникод?   -  person Cody Gray    schedule 08.05.2012


Ответы (1)


Если проект скомпилирован с поддержкой Unicode, то будет определена директива препроцессора UNICODE (или _UNICODE). Тестирование, чтобы увидеть, определено ли это, даст вам ответ:

#if defined(UNICODE) || defined(_UNICODE)
    // The project is compiled for Unicode
#else
    // The project is NOT compiled for Unicode
#endif

Вы также можете проверить это в настройках вашего проекта.

  1. В меню «Проект» нажмите «Настройки».
  2. Выберите вкладку «С/С++».
  3. В разделе «Определения препроцессора» проверьте наличие UNICODE и _UNICODE.

Если у вас есть проект, который в настоящее время не ориентирован на Unicode, но вы хотите проверить, может ли, то лучше всего определить эти директивы препроцессора и затем попробуйте скомпилировать свой проект. Если это удастся, то все готово. Если это не удается, пройдите и исправьте ошибки, выданные компилятором.

person Cody Gray    schedule 08.05.2012
comment
после проверки я вижу, что мой проект не ориентирован на unicode, он нацелен на многобайтовый набор символов. Теперь, как узнать, что мой исходный код может ориентироваться на unicode. Я вижу, что все параметры в методах имеют тип char вместо wchar_t, могу ли я сделать вывод, что он не нацелен юникод? - person nguyen; 09.05.2012
comment
@nguyen: если он нацелен на многобайтовый набор символов (MBCS), то он не ориентируется на Unicode. И если вы использовали тип char вместо типа TCHAR, как предполагалось, то вы не сможете перекомпилировать его для Unicode, просто добавив #define UNICODE. Вам нужно будет переписать код, либо использовать TCHAR с определенным Unicode, либо wchar_t. - person Cody Gray; 09.05.2012