On-line: tnsr2, гостей 1. Всего: 2 [подробнее..]
АвторСообщение
Администратор




Пост N: 672
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 25.12.07 17:36. Заголовок: AnsiToOEM по украински под win98


Есть проблема со вводом украинской i

При перекодировке символов Іі (в cp1251 коды 178 и 179) в cp866 функцией типа HB_ANSITOOEM получается нечитаемяй символ
Эта функция работает через winapi CharToOemBuff

Под winxp я эту проблемку решил посредством патча файла c_866.nls

Под win98, когда я использовал клиппер, перекодировка выполнялась правильно, то есть 16-разрядная CharToOemBuff перекодировала украинское i в латинское
Но 32-разрядная версия CharToOemBuff под win98 работает опять таки неправильно
Т.е. под win98 16-разрядная и 32-разрядная CharToOemBuff работают неодинаково
Как бы это дело полечить ?

Я "нутром чую", что надо править файлы cp_866.nls и xlat866.bin, но их структура мне неизвестна

Поиском в инете я нашел решение похожей проблемы: перекодировка между украиской кодовой страницей ГОСТ 201891, которая отличается от 866-й страницы украискими символами, и 1251. Но мне нужна именно cp866


Спасибо: 0 
Профиль
Новых ответов нет


Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 63
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет