Страница 1 из 1

Win 7 - кодировка консоли

СообщениеДобавлено: 18.10.2011 (Вт) 10:39
Samovar
Есть прога, писаная на Clipper-е. Чтобы заставить ее работать на Vista/Win7 в окне сделали свой NLS файл.
Прога вызывает внешние приложения, чтобы сливать информацию в Word и Excel. При вызове других приложений проходит через Command.com->CMD.EXE.
В Vista все работает прекрасно, но в Win7: После закрывания внешнего приложения (или даже после вызова cmd.exe), кодировка теряется и русские буквы переходят в "иероглифы". Если выйти из программы, запустить CHCP 856 и снова войти, все востанавливается, но о-о-о-чень неудобно.
Мои попытки переключать кодовую страницу через int21h, func.66h-02 не увенчались успехом. Считать кодовую страницу через 66h-01 - пожалуста (вегда 437), сменить - нет, ошибка 7207h. :(

П.С. Прошу прощения, если влез с вопросом не туда. :oops:

Re: Win 7 - кодировка консоли

СообщениеДобавлено: 02.11.2011 (Ср) 11:11
Samovar
"Разкодировка" проявляется только если пройти через command.com. Который, к стати, не изменился и остался тот-же как и в Vista. :|
Все попытки решить проблему не имели успеха. Наконец надоело и скопировали свой NLS файл ещо раз как C_437.NLS (для этого надо в Security->Advanced->Owner поставить себя, а то иначе не разрешает старый файл трогать). Теперь после вызова внешнего приложения консоль может сколько хочет переходить на 437! :x