Текст и "кракозябрами" и правильно?

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
brigval
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 176
Зарегистрирован: 16.10.2005 (Вс) 12:37
Откуда: Подмосковье

Текст и "кракозябрами" и правильно?

Сообщение brigval » 07.03.2015 (Сб) 9:52

Программа написана на VB6. Пользователь запустил ее в Win8 64. Результат на скриншоте.
Текст на кнопках , статусбаре и лэйблах один и тот же. MS Sans Serif.
То есть, на одних элементах управления текст отображается правильно, на других - нет.
Как можно решить проблему отображения текста? Где покопать?

Добавлю еще, что на моем Win 8.1 Pro 64 весь текст отображается правильно.

pic1.jpg
pic1.jpg (92.64 Кб) Просмотров: 3469
brigval

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Re: Текст и "кракозябрами" и правильно?

Сообщение alibek » 07.03.2015 (Сб) 11:54

Выставить Charset.
Ну и использовать MS Sans Serif уже давно не модно.
Лучше использовать Verdana или Segoe.
Lasciate ogni speranza, voi ch'entrate.

ger_kar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1957
Зарегистрирован: 19.05.2011 (Чт) 19:23
Откуда: Кыргызстан, Иссык-Куль, г. Каракол

Re: Текст и "кракозябрами" и правильно?

Сообщение ger_kar » 07.03.2015 (Сб) 12:20

А можно просто снести кривые винды и поставить нормальную систему. Windows 8 это вообще какое-то дичайшее извращение.
Бороться и искать, найти и перепрятать

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Текст и "кракозябрами" и правильно?

Сообщение Хакер » 07.03.2015 (Сб) 17:18

В идеале, конечно, стоит найти и использовать юникодные контролы.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

ger_kar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1957
Зарегистрирован: 19.05.2011 (Чт) 19:23
Откуда: Кыргызстан, Иссык-Куль, г. Каракол

Re: Текст и "кракозябрами" и правильно?

Сообщение ger_kar » 07.03.2015 (Сб) 19:09

brigval писал(а):Добавлю еще, что на моем Win 8.1 Pro 64 весь текст отображается правильно.

Открой реестр по адресу:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes
На обеих системах и сравни содержимое. Подправь на том компе, где каркозяблы ключи, т.е. сделай их аналогично тому компьютеру, на котором всё нормально.
Это в первую очередь! Если все будет нормально дальше копать не нужно, а если не поможет, тогда смотри
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage
Опять же сравни как у тебя на разных компах и подправь соответственно.
Бороться и искать, найти и перепрятать

brigval
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 176
Зарегистрирован: 16.10.2005 (Вс) 12:37
Откуда: Подмосковье

Re: Текст и "кракозябрами" и правильно?

Сообщение brigval » 08.03.2015 (Вс) 22:27

alibek писал(а):Выставить Charset.

Если где-то об этом можно посмотреть, я бы посмотрел.

alibek писал(а):Ну и использовать MS Sans Serif уже давно не модно.
Лучше использовать Verdana или Segoe.

Программа десятилетней давности. Шрифт в контролах использовался "по умолчанию".
На счет модных шрифтов подумаю.


ger_kar писал(а):А можно просто снести кривые винды и поставить нормальную систему. Windows 8 это вообще какое-то дичайшее извращение.

Пользователь запустил мою программку, скачанную из Интернета, в том, что у него есть. Возникла проблема. Надо ее порешать.

Хакер писал(а):В идеале, конечно, стоит найти и использовать юникодные контролы.

К сожалению, на моем Win 8.1 x64 текст отображается правильно. Да и никогда этим не занимался.

ger_kar писал(а):
brigval писал(а):Добавлю еще, что на моем Win 8.1 Pro 64 весь текст отображается правильно.

Открой реестр по адресу:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes
На обеих системах и сравни содержимое. Подправь на том компе, где каркозяблы ключи, т.е. сделай их аналогично тому компьютеру, на котором всё нормально.
Это в первую очередь! Если все будет нормально дальше копать не нужно, а если не поможет, тогда смотри
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage
Опять же сравни как у тебя на разных компах и подправь соответственно.

Пропробую поработать в этом ключе с пользователем. Уделенно.

Спасибо за ответы.
brigval

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 09.03.2015 (Пн) 1:17

ger_kar писал(а):Открой реестр по адресу:

Бррр.. Ну что за метод вместо отго, чтобы исправлять свою программу, портить настройки чужого компьютера.

brigval писал(а):Если где-то об этом можно посмотреть, я бы посмотрел.

Эм.. А что именно смотреть? Просто явно выбрать кириллический шрифт и всё.
Шрифт - marked.png
Шрифт - marked.png (22.65 Кб) Просмотров: 3409

ger_kar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1957
Зарегистрирован: 19.05.2011 (Чт) 19:23
Откуда: Кыргызстан, Иссык-Куль, г. Каракол

Re: Текст и "кракозябрами" и правильно?

Сообщение ger_kar » 09.03.2015 (Пн) 6:15

Qwertiy писал(а):Бррр.. Ну что за метод вместо того, чтобы исправлять свою программу, портить настройки чужого компьютера.
Всё как раз ровно наоборот, и проблема в том, что в программе всё как раз нормально, и кириллический набор шрифта, как не странно стоит, но тем не менее новомодные кривые системы все равно умудряются преподнести пользователю кракозяблы. Причем эта проблема достаточно распространена (я на такое достаточно часто натыкался). И исправление настроек системы принесет больше пользы, ибо в других подобных случаях пользователь проблемы и не заметит и все будет работать правильно сразу :)
Бороться и искать, найти и перепрятать

brigval
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 176
Зарегистрирован: 16.10.2005 (Вс) 12:37
Откуда: Подмосковье

Re:

Сообщение brigval » 09.03.2015 (Пн) 10:41

ger_kar писал(а):
brigval писал(а):Добавлю еще, что на моем Win 8.1 Pro 64 весь текст отображается правильно.

Открой реестр по адресу:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes
На обеих системах и сравни содержимое. Подправь на том компе, где каркозяблы ключи, т.е. сделай их аналогично тому компьютеру, на котором всё нормально.
Это в первую очередь! Если все будет нормально дальше копать не нужно, а если не поможет, тогда смотри
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage
Опять же сравни как у тебя на разных компах и подправь соответственно.

Пользователь прислал эти две ветки реестра. Они с моими идентичны. Видимо, причина разного отображения не в этом. :(


Qwertiy писал(а):
ger_kar писал(а):Эм.. А что именно смотреть? Просто явно выбрать кириллический шрифт и всё.
Вложение Шрифт - marked.png больше недоступно.


Так и выбрано, конечно. Замечу еще раз, что шрифт одинаковый во всех контролах, но на кнопках он отображается правильно, на лэйблах и статусбаре - нет.

Текст должен быть таким...
Load.jpg
Load.jpg (51.76 Кб) Просмотров: 3397
brigval

ger_kar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1957
Зарегистрирован: 19.05.2011 (Чт) 19:23
Откуда: Кыргызстан, Иссык-Куль, г. Каракол

Re: Текст и "кракозябрами" и правильно?

Сообщение ger_kar » 09.03.2015 (Пн) 11:15

Ну как вариант нет шрифта в системе. А вообще конечно странно.
Ещё как вариант, можно в проге попробовать разные шрифты поставлять.
Других вариантов я не знаю.
Бороться и искать, найти и перепрятать

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 09.03.2015 (Пн) 13:42

ger_kar писал(а):Всё как раз ровно наоборот, и проблема в том, что в программе всё как раз нормально, и кириллический набор шрифта, как не странно стоит, но тем не менее новомодные кривые системы все равно умудряются преподнести пользователю кракозяблы.

Та же проблема, но с советом переписать 8 соседних кодовых страниц. Подумал, что твоё решение того же плана.

brigval писал(а):Замечу еще раз, что шрифт одинаковый во всех контролах, но на кнопках он отображается правильно, на лэйблах и статусбаре - нет.

Там тоже (вариант с лейблами вроде тоже где-то был)...

ger_kar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1957
Зарегистрирован: 19.05.2011 (Чт) 19:23
Откуда: Кыргызстан, Иссык-Куль, г. Каракол

Re: Текст и "кракозябрами" и правильно?

Сообщение ger_kar » 09.03.2015 (Пн) 15:37

Qwertiy писал(а):Та же проблема, но с советом переписать 8 соседних кодовых страниц. Подумал, что твоё решение того же плана.
Ну кто-то явно переборщил. Ну ладно одну кодовую страницу, ну в крайнем случае две, если все другие способы исчерпаны, и ничего не помогло, но 8!!! это уже явный перебор :shock:
Когда у меня была аналогичная проблема с Windows 7 и надписями грида, то я мне хватило установки параметров шрифтов в ветке
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes
Которые я просто скопировал из своей системы Windows XP.
Бороться и искать, найти и перепрятать

brigval
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 176
Зарегистрирован: 16.10.2005 (Вс) 12:37
Откуда: Подмосковье

Re: Текст и "кракозябрами" и правильно?

Сообщение brigval » 25.03.2015 (Ср) 16:57

Пользователь написал.

теперь программа отображается правильно:
панель управления -> региональные стандарты -> дополнительно -> язык программ, не поддерживающих юникод (изменить язык системы) -> выбрать английский США
перезагрузиться
а затем все тоже самое, но выбрать русский (россия)
перезагрузиться


Большое спасибо всем за обсуждение.
brigval

ger_kar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1957
Зарегистрирован: 19.05.2011 (Чт) 19:23
Откуда: Кыргызстан, Иссык-Куль, г. Каракол

Re: Текст и "кракозябрами" и правильно?

Сообщение ger_kar » 25.03.2015 (Ср) 17:47

brigval писал(а):Пользователь написал.

теперь программа отображается правильно:
панель управления -> региональные стандарты -> дополнительно -> язык программ, не поддерживающих юникод (изменить язык системы) -> выбрать английский США
перезагрузиться
а затем все тоже самое, но выбрать русский (россия)
перезагрузиться


Большое спасибо всем за обсуждение.

Жалко что пользователь при этом не отмониторил изменения вносимые в реестр при этих манипуляциях. А так бы точно можно было-бы прояснить в чём тут подвох. Эх...
Бороться и искать, найти и перепрятать


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4

    TopList