Главная страница
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.039 c
2-1152111508
AlexanderMS
2006-07-05 18:58
2006.07.23
Время выполнения процедуры


15-1150975443
NailMan
2006-06-22 15:24
2006.07.23
Нужна прога для передачи файлов...


15-1150505780
ВиндосМЕ
2006-06-17 04:56
2006.07.23
Майкрософт прекращает поддержку Windows XP Service Pack 1


2-1151991076
Kinda
2006-07-04 09:31
2006.07.23
работа с DBGrid ом


2-1151845021
Gizza
2006-07-02 16:57
2006.07.23
Приоритет программы