Einzelnen Beitrag anzeigen

jbg

Registriert seit: 12. Jun 2002
3.483 Beiträge
 
Delphi 10.1 Berlin Professional
 
#15

Re: Port von Turbo Pascal zu Delphi

  Alt 10. Okt 2007, 12:40
Es gäbe da noch die Möglichkeit einen eigenen Textdatei-"Gerätetreiber" zu schreiben, der mit einer eigenen AssignFile()-Funktion initialisiert wird und bei jedem Write/WriteLn/Read/ReadLn Aufruf automatisch aufgerufen wird.

Das ginge dann so:
Delphi-Quellcode:
AssignTextImage(Output, MyImage);
Reset(Output);

WriteLn('Hallo Welt. ', 10, ' ', 0.3);

CloseFile(Output);
Delphi-Quellcode:
type
  PImage = ^TImage;

function ImageOpen(var t: TTextRec): Integer; forward;

procedure AssignTextImage(var f: TextFile; AImage: TImage);
var
  t: TTextRec absolute f;
begin
  FillChar(t, SizeOf(TTextRec), 0);
  t.BufPtr := @t.Buffer;
  t.Mode := fmClosed;
  t.BufSize := SizeOf(t.Buffer);
  t.OpenFunc := @ImageOpen;
  PImage(@t.UserData[1])^ := AImage;
end;
Den Rest muss du dir selbst erarbeiten. Man müsste nun halt ein TurboPascal Handbuch zur Hand haben oder man schaut sich den System.pas Quellcode für den Consolen-Gerätetreiber an.


Übrigens: EasyWin (wer das noch kennt) hat genau das selbe unter TurboPascal für Win 3.1 gemacht.
  Mit Zitat antworten Zitat