![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Знатоки, подскажите!
Программа работает у многих пользователей, проблем никаких нет. Но недавно обнаружился компьютер у очень удаленного пользователя, на котором окно программы выглядит так (скрин во вложении). То есть кодировка строк Caption в Button и Label, введенных в дизайнере, нечитаема. Но если Caption в Label заполняю программно (как на скрине зеленая надпись "муниципальное"), то все читается. Также все в порядке с кодировкой данных - в Edit и Grid все читается. Никаких баз данных нет, данные (в том числе и то, что выводится в Label), читаю из XML (использую ClientDataSet). В XML кодировка прописана явно: LCID="1049". Программа на Делфи 7. Для всех компонентов и самих форм установлен шрифт Arial, указан RUSSIAN_CHARSET. У пользователя два компьютера, на обоих Windows XP. На одном все нормально, на другом - то, о чем написал. Вопросы: 1. Что надо было сделать с компьютером, чтобы появились такие чудеса? 2. Можно ли что-то предпринять в самой программе, чтобы даже в таком случае отображение было нормальным (кроме программного заполнения всех Caption)? Доступа к этим компьютерам у меня нет (физически невозможно, очень далеко). Задать пользователю какие-то вопросы о компьютерах теоретически возможно, но лучше решить проблему в самой программе (вдруг у кого-то еще такое может повториться). |
#2
|
|||
|
|||
![]() Цитата:
Могла встать другая таблица кодировки. По-умолчанию в реестре должно быть так: [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro l\Nls\CodePage] "1250"="c_1250.nls" "1252"="c_1252.nls" иногда. для совместимости кодировки и вообще для уменьшения проблем делают так: [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro l\Nls\CodePage] "1250"="c_1251.nls" "1252"="c_1251.nls" проверь эти ветки и, если нужно, поменяй. Изменения вступят после перезагрузки. |
#3
|
|||
|
|||
![]() Спасибо за ответ, но воспроизвести эффект у себя на экспериментальной XP не получилось. При обоих вариантах у меня все воспроизводится правильно.
Вообще хотелось бы найти опцию в проекте Делфи или строчку в коде, предотвращающие такое безобразие. Ведь часть отображается правильно, а часть - нет! |
#4
|
|||
|
|||
![]() Каким образом у тебя заполняется надпись МУНИЦИПАЛЬНОГО? У нее тип String или pANSIchar? Может быть, в этом что-то кроется. Проверь наличие шрифта Arial на проблемной машине. Странности бывают - я однажды работал на компе, у которого не было шрифтов с псевдографикой (не помню название
![]() |
#5
|
|||
|
|||
![]() Тип String.
Пользователю написал, как проверить шрифт, жду ответ. Хотя на скрине явно Arial. |