Цитата:
Сообщение от Freeman
Аффтар, ты баран. Пользоваться Юникод-версией Delphi и городить какую-то кривую самопальщину вместо встроенного преобразования кодовых страниц -- надо быть альтернативно одаренным. Неужели нельзя справку почитать? Есть прекрасная функция SetCodePage. Передавай ей GetOEMCP, и будет тебе преобразование из кодовой страницы OEM.
|
"setcodepage" надо будет запомнить, ранее не натыкался, вопрос же сейчас уже по больше части в другом - почему не идет отправка данных в консольное приложение, или же оно идет но не полностью?
к слову говоря:
Код:
procedure TForm1.btnWriteClick(Sender: TObject);
var s:string;
begin
if zRedirect<>nil then begin
s := edInput.Text+#13#10;
if rgCharset.ItemIndex=1 then
//CharToOem(@s[1],@s[1]); //////////
s:=StrAnsiToOem(s);
zRedirect.WriteData(s);
edInput.Text := '';
end;
end;
procedure TRedirectThread.WriteData(Data: string);
var writen:Cardinal;
begin
if (hWriteIn<>0) and (Length(Data)>0) then begin
WriteFile(hWriteIn, Data[1], Length(Data), writen, nil);
end;
end;