![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| BARCA132 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 30.11.2009 Репутация: нет Всего: нет |
Подскажите, что это может быть?
На некоторых ПК, программа при выводе в Hint и в ShowMessage,MessageDlg русские буквы показываются кракозябры. ![]() ![]() Винда везде WINXP SP3 RUS. Региональные настройки стоят все РУССКИЕ, Россия (Панель управления, Язык и региональные стандарты). Это косяк в Дельфи? Или что-то в операционке не хватает? Спасибо. Это сообщение отредактировал(а) BARCA132 - 28.12.2009, 16:07 Присоединённый файл ( Кол-во скачиваний: 11 )
01.jpg 26,32 Kb |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
BARCA132, шрифт может не иметь символов кирилицы.
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| BARCA132 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 30.11.2009 Репутация: нет Всего: нет |
||||
|
||||
| Poseidon |
|
|||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 53 Всего: 133 |
А если попробовать давно забытую ветку реестра HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Nls\Codepage
и поправить там "1250"="cp_1251.nls" "1251"="cp_1251.nls" "1252"="cp_1251.nls" и после перезагрузки проверить. -------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
| Akella |
|
||||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
И ещё. Вместо MessageDlg советую использовать MessageBox.
|
||||
|
|||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Poseidon, на чужих машинах так делать нельзя. Лучше вызывать SetThreadLocale для каждого потока системы. Эффект должен получиться тем же.
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| BARCA132 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 30.11.2009 Репутация: нет Всего: нет |
Обязательно сегодня вечером проверю... Сообщу резалт. Сэнкс... Вот только на ПК, где все ОК, в реестре стоит "1250"="cp_1250.nls" "1251"="cp_1251.nls" "1252"="cp_1252.nls" и все нормально отображается. Это так и должно быть? Ну я это знаю. Ну а причем тут замена одного компонента на другой? Ведь речь явно в кодировках... А Hint у всех компонентов на что заменить? Опять же - это уход от проблемы. А с Hint что делать? |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Ничуть, это скажет системе что преобразование юникода в кириллицу следует делать с локалью 1251. Кроме того надеюсь у вас везде чарсет стоит кириллистический? -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| BARCA132 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 30.11.2009 Репутация: нет Всего: нет |
СУПЕР!!! Точно помогло!. Поставил на нескольких машинах, только надо ставить: "1250"="c_1251.nls" "1251"="c_1251.nls" "1252"="c_1251.nls" а не "cp_1251.nls" (букву p не ставим) И все сработало!!! Спасибо!!!
ЭЭЭЭ... Я сказал, что >Региональные настройки стоят все РУССКИЕ, Россия (Панель управления, Язык и региональные стандарты). Это об этом речь? Или что-то еще где-то поставить надо? |
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
||||
|
||||
| BARCA132 |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 30.11.2009 Репутация: нет Всего: нет |
Ну, дык, в MessageDlg синтаксис такой же... if MessageDlg('Добавить?',mtWarning, [mbYes,mbNo],0)=mrNo then То есть мне кажется, это не спасет отца русской демократии... |
||||
|
|||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Разница огромная
MessageBox - системные диалоги - они локализованы вместе с самой виндой. А недоразумение под названием MessageDlg вообще непонятно зачем сделано. Генерируется на основе TForm и поддаётся локализации только при помощи бубна и правки ресурсов. Какой смысл был это городить - не понятно. |
|||
|
||||
| BARCA132 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 30.11.2009 Репутация: нет Всего: нет |
||||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
||||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |