Вниз
Скачать: CL | DM;

code page в консольном приложении   Найти похожие ветки 

 
ilya39 ©   (2005-06-06 11:02) [0]

Подозреваю что тема обсуждалась не раз. Но!
Надо чтобы в консольном приложении то, что выведено по WriteLn отображалось русскими буквами.

 var cp: integer;
 ....
 SetConsoleOutputCP(1251);
 cp := GetConsoleOutputCP;
 WriteLn("абв");
 ReadLn;


Так вот не работает это, в место "абв" - ерунда хотя cp = 1251...

В итоге решил проблему с помощью CharToOEM, но не понятно почему неработает SetConsoleOutputCP... Кто сталкивался с подобным вопросом подскажите, что не так?


 
VMcL ©   (2005-06-06 11:24) [1]

Из MSDN:
>However, if the current font is a raster font, SetConsoleOutputCP does not affect how extended characters are displayed.

Следовательно, нужно установить для консольного окна не растровый шрифт, т. е. Lucida Console, например.


 
sniknik ©   (2005-06-06 11:44) [2]

> т. е. Lucida Console, например.
в полноэкранном режиме верно отображать не будет.. ;)


 
VMcL ©   (2005-06-06 11:55) [3]

>>sniknik ©   (06.06.05 11:44) [2]

Угу. К тому же SetConsoleOutputCP не будет работать в Win9x.


 
Anatoly Podgoretsky ©   (2005-06-06 12:04) [4]

VMcL ©   (06.06.05 11:24) [1]
Это замечание относится к консольнму окну и не имеет отношения к консоли. Вообще то не совсем понятно зачем нужна эта функция, поскольку она явно не работоспособна по физической природе. Исключая случаи программируемых знакогенераторов, но такое вроде не реализовано. Может она несет только информационные функции для других функций ОС



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.022 c
6-1113884655
boalse
2005-04-19 08:24
2005.07.31
Имитация сети на одной машине


4-1117602130
Damager
2005-06-01 09:02
2005.07.31
Как отловить минимизацию окна


3-1119527942
XpbI
2005-06-23 15:59
2005.07.31
Едет крыша не спеша тихо сиквелом шурша... F1


3-1119618887
vok
2005-06-24 17:14
2005.07.31
Название поля


4-1117384202
cherrex
2005-05-29 20:30
2005.07.31
Delphi и ABBYY FineReader




   Наверх