Как просмотреть значение Unicode CString в VC6? - PullRequest
3 голосов
/ 14 сентября 2011

Я использую Visual Studio 6 для отладки приложения C ++. Приложение скомпилировано для поддержки строки Unicode. Тип CString используется для манипулирования строками. Когда я использую отладчик, в окне просмотра будет отображаться первый символ строки, но не будет отображаться полная строка. Я пытался использовать XDebug , но этот инструмент не обрабатывает строки в кодировке Юникод. В качестве обходного пути я могу создать собственное наблюдение для каждого символа строки, указав частный массив, поддерживаемый CString, но это очень утомительно.

Как просмотреть полное значение Unicode для CString в отладчике VC6?

1 Ответ

6 голосов
/ 14 сентября 2011

Перейдите в tools-> options-> Debug и установите флажок «Показать строку Unicode».Это, вероятно, решит проблему.Два других варианта:

  1. Если в окне просмотра есть строковая переменная Unicode с именем szText, добавьте ее в часы как szText,su.Это скажет VS интерпретировать его как строку Unicode (см. Символы для переменных наблюдения для получения дополнительной информации).
  2. В худшем случае, вы можете иметь глобальный строковый буфер ANSIи глобальная функция, которая получит строку Unicode CString и сохранит ее содержимое как ANSI в этой глобальной переменной.Затем, когда нужно вызвать эту функцию со строкой, содержимое которой вы хотели бы видеть в окне наблюдения, и посмотреть буфер ANSI.

Но проблема с отображением строки в Unicode, вероятно, является проблемой...

...