Seite 1 von 1

Datei->Ausdruck

Verfasst: Di, 17. Jul 2012 13:49
von angelo
Hallo zusammen,

habe eine Datei erstellen lassen in einem Clipperprogamm.
Nun kommt folgende Frage.
Kann ich gleich nachfolgend, wenn die Datei erstellt wird, die gleiche Text-Datei ausdrucken?
Als Beispiel:
...
...
...
set printer to &cdatei
set device to printer
...text...
...text...
...text...
set device to screen
set printer to


Im voraus vielen Dank für die Hilfe.

Viele Grüße
angelo

Re: Datei->Ausdruck

Verfasst: Di, 17. Jul 2012 14:27
von brandelh
Die Datei müsste alle Steuerzeichen etc. beinhalten, insoweit geht das schon.
Wenn es an einen LPT Port geht, habe ich sowas mit
copy text.txt /b LPT1
direkt kopiert. Eventuell geht noch der alte PRINT Befehl vom Betriebssystem ?
Man könnte alles mit memoread() einlesen und den String mit ?? an den Drucker senden (kein Zeilenvorschub),
solange er nicht zu groß wird (DOS-CLIPPER ist das sehr schnell der Fall, unter Xbase++ nahezu nie ...)

Code: Alles auswählen

cTxt := memoread("text.txt")
set printer to LPT1
set printer on 
?? cTxt
set printer off
set printer to 
Ansonsten bleibt unter Clipper das Öffnen mit fopen(), fread() etc. und die Ausgabe an den Drucker auch mit ?? damit keine neuen Zeilenschaltungen eingefügt werden.

Re: Datei->Ausdruck

Verfasst: Mi, 18. Jul 2012 8:50
von UliTs
Und warum nicht so wie Angelo vorgeschlagen hat?
Ist meines Erachtens viel einfacher :-)

Uli

Re: Datei->Ausdruck

Verfasst: Do, 19. Jul 2012 8:49
von brandelh
Hallo UliT,

natürlich könnte angelo seinen Code leicht abändern, damit er direkt druckt,
ich lese aber ...
angelo hat geschrieben:habe eine Datei erstellen lassen in einem Clipperprogamm.
Nun kommt folgende Frage.
Kann ich gleich nachfolgend, wenn die Datei erstellt wird, die gleiche Text-Datei ausdrucken?
so, dass er genau das nicht möchte, sondern erst die Datei erstellen und dann diese ausdrucken.
Darum mein Vorschlag ;-)
PS: Ich hatte unter Clipper am Anfang ein ähnliches Problem und habe mit mlcount und memoline zeilenweise gedruckt,
da die Datei zu groß wurde um sie auf einmal zu drucken. Leider war das mit zunehmender Dateigröße immer lahmer,
daher der Lösungsvorschlag entweder direkt (wenn der Speicher reicht) oder über fopen() ...