Сообщения об ошибках на русском языке, как в IDE VB6

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Adam Smith
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 219
Зарегистрирован: 25.04.2008 (Пт) 9:04
Откуда: ЧР. Грозный

Сообщения об ошибках на русском языке, как в IDE VB6

Сообщение Adam Smith » 27.12.2012 (Чт) 12:38

В IDE VB6 сообщения об ошибках идут на русском, а в скомпилированной программе на английском.

Подскажите как это исправить. Чтоб скомпилированная программа выдавала сообщения об ошибках на русском языке.

Помню где-то на просторах рунета, в теме не касающейся ошибок VB6 я читал, там ТС что-то делал с Err.Number'om.

И, возможно с помошью FormatMessage и FORMAT_MESSAGE_FROM_SYSTEM, он получал русские дэскрипшены ошибок.


Решил создать тему потому, что поиск "ошиб* *русск*" так и не дал результатов, толи повис, толи ещё че, незнаю.

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

Re: Сообщения об ошибках на русском языке, как в IDE VB6

Сообщение Хакер » 27.12.2012 (Чт) 12:43

Этого не нужно делать.
Адекватного перевода не существует, авторов существующих неадекватных переводов нужно пристрелить.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Adam Smith
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 219
Зарегистрирован: 25.04.2008 (Пт) 9:04
Откуда: ЧР. Грозный

Re: Сообщения об ошибках на русском языке, как в IDE VB6

Сообщение Adam Smith » 27.12.2012 (Чт) 12:49

Хакер, ну зачем ты так сразу?

Этоже возможно, пусть и не русифицирует абсолютно всех сообщений об ошибках VB6.

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

Этот вот тот тупизм, который только что мне в голову заполз )))))))))))))))

Но помню у того автора всё было намного красивее, какая-то константа добавлялась к Err.Number'у.

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

Re: Сообщения об ошибках на русском языке, как в IDE VB6

Сообщение Хакер » 27.12.2012 (Чт) 12:55

Adam Smith писал(а):Хакер, ну зачем ты так сразу?

Как есть, так и говорю.

Adam Smith писал(а):чтоб из системы дергать подходящие дэскрипшены.

В системе нет описания VB-шных ошибок. Описания ошибок хранятся в ресурсах (в StringTable) файла msvbvmX0.dll. MS на протяжении всех этих 14 лет после выхода в 1998 году последнего VB выпускала апдейты msvbvm(5/6)0.dll. Так что если вдруг в голову придёт идея подменять msvbvmX0.dll с помощью своей руссифицированной библиотеки — то это тоже плохая идея.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Adam Smith
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 219
Зарегистрирован: 25.04.2008 (Пт) 9:04
Откуда: ЧР. Грозный

Re: Сообщения об ошибках на русском языке, как в IDE VB6

Сообщение Adam Smith » 27.12.2012 (Чт) 13:09

Ладно, не спорю ни разу. У меня под рукой библиотки msvbvm60.dll аж 7 штук.
Посмотрел в последней версии от Win7, действительно, там стрингтэйблы 1033.

НО IDE сообщает об ошибках по русски, это факт.

Допустим она использует другие ресурсы, которые я не захочу таскать за программой.

Опять НО, в системе дэскрипшнов побольше чем в VB6 и подходящие подозреваю найдутся.

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

Re: Сообщения об ошибках на русском языке, как в IDE VB6

Сообщение Хакер » 27.12.2012 (Чт) 13:13

Adam Smith писал(а):НО IDE сообщает об ошибках по русски, это факт.

И что?
Когда проект работает под IDE, то MSVBVM вообще не используется. Вместо неё использует её «клон» VBA6.DLL (скомпилирован из тех же сишных исходников, что и MSVBVM, но с другими ключами компиляции), а сообщения берутся из ресурсов VB6IDE.DLL.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Adam Smith
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 219
Зарегистрирован: 25.04.2008 (Пт) 9:04
Откуда: ЧР. Грозный

Re: Сообщения об ошибках на русском языке, как в IDE VB6

Сообщение Adam Smith » 27.12.2012 (Чт) 13:23

Странно, там тоже всё по-английски.

Если не в системе, то где искать источник русских сообщений об ошиках?

Adam Smith
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 219
Зарегистрирован: 25.04.2008 (Пт) 9:04
Откуда: ЧР. Грозный

Re: Сообщения об ошибках на русском языке, как в IDE VB6

Сообщение Adam Smith » 03.01.2016 (Вс) 3:06

Может кто по названию темы забредет. Я тогда всё таки нашел решение. Дескрипшены по-русски оказывается были в ресурсах русской vb6ide.dll.
Секцию стрингтэйблов я добавил в свою прогу, сделал один глобальный обработчик ошибок и по коду ошибки дёргал нужную строку из ресурсов.
Симпатично тогда получилось, много в той программе делал впервые, хотя рисунок к данной теме прямого отношения не имеет, но всё равно:
Изображение


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

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

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

    TopList