Главная страница
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.048 c
15-1150889662
parovoZZ
2006-06-21 15:34
2006.07.23
Программно ограничить доступ к каталогу/файлу.


1-1149788473
hgd
2006-06-08 21:41
2006.07.23
Иконки в win


15-1151040139
Ega23
2006-06-23 09:22
2006.07.23
С Днём рождения! 23 июня


10-1122389982
Juice
2005-07-26 18:59
2006.07.23
Подавить диалоговые окна Excel


1-1149937656
V.exeR
2006-06-10 15:07
2006.07.23
gen - плагин WinAMP a с формой