Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.07.23;
Скачать: CL | DM;

Вниз

русский язык в консольном приложении   Найти похожие ветки 

 
resuS   (2006-06-30 21:56) [0]

Как в консольном приложении выводить русский язык из буфера, а то у меня там
var
   vBuf2:Tstrings;
...
begin
...
   writeln( vBuf2.Text);
...
end;
а в vBuf2 находится ответ cmd на команду help . получается строки:
ASSOC    эяюяюяююэъяю0Ётщхяях
...
что-то типа этого

Что делать?


 
Джо ©   (2006-06-30 22:08) [1]

CharToOem


 
Gero ©   (2006-07-01 04:55) [2]


function ConOutFunc(var Text: TTextRec): Integer;
var
 Dummy: Cardinal;
 SavePos: Integer;
begin
 SavePos := Text.BufPos;
 if SavePos > 0 then
   begin
     Text.BufPos := 0;
     CharToOemBuff(Text.BufPtr, Text.BufPtr, SavePos);
     if WriteFile(Text.Handle, Text.BufPtr^, SavePos, Dummy, nil) then
       Result := 0
     else
       Result := GetLastError;
   end  { if}
 else
   Result := 0;
end;

initialization

TTextRec(Output).InOutFunc := @ConOutFunc;
TTextRec(Output).FlushFunc := @ConOutFunc;


 
Desdechado ©   (2006-07-01 13:30) [3]

Я долго бился над этой проблемой, но вразумительного решения (кроме тупого CharToOEM) не нашел.
Хотя винда предоставляет функции для переключения консольного вывода, но они работают не так как заявлено.
Кроме того, полноэкранный и оконный режим себя по-разному ведут с этими функциями.


 
resuS   (2006-07-01 15:27) [4]

все заработало с использованием тупого chartoOem :)



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

Текущий архив: 2006.07.23;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.047 c
15-1151246456
Ketmar
2006-06-25 18:40
2006.07.23
pe-cryptor.


15-1149582860
Empleado
2006-06-06 12:34
2006.07.23
Поедем на рыбалку?


6-1142583177
Derr
2006-03-17 11:12
2006.07.23
Метод OnExecute в Indy10


15-1150699761
QuickFinder
2006-06-19 10:49
2006.07.23
Алгоритмы сжатия и шифрования


2-1151866361
flaxe
2006-07-02 22:52
2006.07.23
Многомерный массив в файл