Seite 1 von 1

Drucke für Emails speichern

Verfasst: Mo, 08. Jul 2019 21:32
von Ritchie39
Hallo Miteinander, :)
ich möchte folgendes Problem lösen:
Wenn ich derzeit einen Brief, Rechnung, etc mit meinem von mir unter Clipper erstellten Programm als Email versenden will, muß ich diesen Brief erst über meinen mittels LPT3 angeschlossenen und umgeleiteten Drucker ausdrucken. Der Brief ist über die Steuersequenzen EPSON-Printer-Code formatiert und enthält verschieden strukturierte Schriftarten für Briefkopf, -Ende, wie Groß- Fettdruck etc.
Danach muß ich das Blatt wieder einscannen um eine per Email sendbare Datei (zB. jpg) zu erstellen.
Doch nun zu meiner Frage.
Gibt es die Möglichkeit, diese Druck-Datei so umzuleiten, daß diese nicht an den unter LPT angeschlossenen Drucker, sondern direkt in eine weiter verwendbare z.B. JPG- oder PDF-Datei umgeleitet wird, die so ausschaut, als wie es vom Drucker gedruckt wird. So könnte ich mir diesen Zwischenschritt zu ersparen.
Auf diese Idee bin ich gekommen, da ich ich zB. im Word Doc's mittels Bullzip Printer in PDF's umwandeln kann.
Falls mein Anliegen schon woanders behandelt wurde, bitte ich mir die Quelle anzugeben.

Liebe Grüße

Ritchie39

Re: Drucke für Emails speichern

Verfasst: Mo, 08. Jul 2019 22:46
von flanelli
du könntest das über eine "pdfprint.exe" aka "Dosprinter 3.2" lösen.
Das geht im Prinzip so, dass du die Daten zuerst anstatt an einen Drucker zusenden
diese in eine Datei schreibst ( muss aber mit EPSON-Sequenz erfolgen ) und
dann mittels Aufruf einer Batch wird diese Datei als PDF erstellt.

Klingt im ersten Moment kompliziert aber ist letzendlich doch sehr einfach zu realisieren.

Beispiel:
Dateiname für den Druck z.B. = PDF_X.SPO

Wenn druck erledigt dann Batch zb. PDF_X_GO.BAT via Runshell aufrufe

Inhalt der Batch z.B.
pdfprint.exe /PDF /DEL /LIN /F'lucida console' "PDF_X"

Habe auf diesem Weg jahrelang in zahlreichen Clipper-Programmen völlig problemlos PDF's erstellt

Möglicherweise findest du genau diese "pdfprint.exe" aka "Dosprinter 3.2" nicht mehr im Netz,
das war immer absolute Freeware mit der einzigen Einschränkung, dass hie und da ( sehr selten )
in dem PDF ganzn unten auf einer der Seiten mal ein kleiner Hinweis "dosprinter 3.2" aufscheint.

Re: Drucke für Emails speichern

Verfasst: Mi, 10. Jul 2019 0:56
von Ritchie39
Hallo Flanelli,
ich habe jetzt mal 2 Programme runtergeladen, die ich unter Deinen beiden angegebenen Namen gesucht habe. Ich weiß aber nicht, daß das die richtigen sind, welche Du gemeint hast.
Nummer 1 war 7 PDF-Printer, welches ich mit "PDFPRINT.EXE" suchte, und das zweite heißt Printfil, welches ich unter "DOSPRINTER 3.2" fand. :roll:
Vielleicht kennst Du noch die HP oder die Entwickler Deiner Programme? :)

Re: Drucke für Emails speichern

Verfasst: Mi, 10. Jul 2019 1:05
von Ritchie39
Aber vorher müsste ich doch erstmal das textfile irgendwie in eine Datei zwischenspeichern, welches ich normalerweise mit

set printer to lpt3
set device to print
set print on

ausdrucke. Oder täusche ich mich da?

Re: Drucke für Emails speichern

Verfasst: Mi, 10. Jul 2019 2:28
von flanelli
Ritchie39 hat geschrieben: Mi, 10. Jul 2019 1:05 Aber vorher müsste ich doch erstmal das textfile irgendwie in eine Datei zwischenspeichern, welches ich normalerweise mit

set printer to lpt3
set device to print
set print on

ausdrucke. Oder täusche ich mich da?
Hallo Ritchie,
was Du als "zwischenspeichern" bezeichnest ist ja nichts anderes als der Ausgabe in eine Datei anstelle eines Druckers über einen Port.

Also einfach statt set printer to lpt3 set printer to Dateiname, z.b. set printer to "PDF_X.SPO"

Bzgl. der passenden PDFPRINT.EXE aka "DOSPRINTER 3.2" als Aufklärung wie folgt...
ich habe ja die Original-EXE-Datei namens DOSPRINTER.EXE nur für meine Clipper-Applikationen in PDFPRINT.EXE umbenannt.
Sorry, das hatte ich vergessen zuvor zu erwähnen.

Du findest die aktuellste Version unter https://dosprinter.net/ als zip zum downloaden.
Entpacke einfach das Zip, es gibt nichts weiteres für irgendeine Installation, die DOSPRINTER.EXE alleine erledigt alles.
Du findest auch auf derWebseite eine umfangreiche, aber sehr klare und einfache Beschreibung wobei Du aber im Normalfall
( so wie du es beschrieben hast was du machen willst ) nichts weiteres von den zahlreichen Möglichkeiten der aktuellen Version brauchen wirst.

Ich habe immer nur die Version 3.2 vom 23.09.2005 verwendet und damals hat man fairerweise 10 Dollar "gespendet",
aktuell wäres es 40 Dollar für eine Lizenz ohne fallweisen Andruck des Hinweise auf den Demostatus.
Es ist jedenfalls ein Schnäppchen mit dem du Dein angesprochenes Problem perfekt lösen kannst.

PS.: Ich bin ja immer noch der Entwickler meiner Programme :-)

Re: Drucke für Emails speichern

Verfasst: Mi, 10. Jul 2019 5:26
von AUGE_OHR
Cl*pper ... also DOS
Ritchie39 hat geschrieben: Mi, 10. Jul 2019 1:05 Aber vorher müsste ich doch erstmal das textfile irgendwie in eine Datei zwischenspeichern, welches ich normalerweise mit
set printer to lpt3
set device to print
set print on
ausdrucke. Oder täusche ich mich da?
statt

Code: Alles auswählen

   set printer to lpt3
dann

Code: Alles auswählen

   set printer to File
das ist nun Cl*pper ... und für Windows :?:

---

a.)
EPSON-Printer-Code Steuersequenzen wären dann im ASCI File.
das File konnte man mit COPY FILE.TXT TO LPT3 ausdrucken.

b.)
das nächste wären OEM Umlaute nach ANSI sonst klappt es nicht mit Windows Apps.

c.)
wenn dann alles in Windows Format entspricht kommt das anhängen an die Email App.
bei 32 BIT OS() kann man es über activeX machen aber bei 64 Bit ...
je nach Email App gibt es evtl. Command Line Optionen die das ermöglichen

---
zu a.)
ich habe noch irgendwo*** eine "Drucker" DBF da sind nicht nur ESC Sequenzen sondern auch PCL.
dazu gibt es dann Functionen die entsprechende Steuerzeichen zurück gibt.

PCL 6 verstehen die meisten Drucker und auch GhostScript ist IHMO darauf aufgebaut auf welchem wiederum viele PDF-Drucker basieren.

*** gefunden
REPORTER.ZIP
GrumpFish Reporter Demo für CL 5
(274.23 KiB) 339-mal heruntergeladen
zu b.) wie schon gesagt muss man auf die DOS Umlaute achten

zu c.) zumindest für 64 Bit Outlook hab ich was gepostet für ein BAT File.
SOCmapi funktioniert nur noch beschränkt.

---

unter Xbase++ hat man auf die Windows Drucker Zugriff.
ab Windows 10 gibt es den "PDF Drucker" der allerdings nur rudimentäre Eigenschaften hat.

solche PDF Drucker für Windows gibt es auch als 3-PP die man als Email weiter leiten kann.
Unterstützung für Drucker Routinen findest du z.b. in Huberts Drucker CLASS

Re: Drucke für Emails speichern

Verfasst: Mi, 10. Jul 2019 9:16
von flanelli
Lieber Jimmy,
alles schön und gut was Du da erzählst aber RITCHIE geht es wohl definitiv um etwas anderes,
nämlich mit und aus seinem CLIPPER-Programm z.B. den Ausdruck einer Rechnung als PDF auf
einfache Art und Weise zu bewerkstelligen und in weiterer Folge via Email zu versenden
ohne das Dokument vorher auf einem Drucker auszugeben und dann einzuscannen.
Ritchie39 hat geschrieben: Mo, 08. Jul 2019 21:32 Hallo Miteinander, :)
ich möchte folgendes Problem lösen:
Wenn ich derzeit einen Brief, Rechnung, etc mit meinem von mir unter Clipper erstellten Programm als Email versenden will, muß ich diesen Brief erst über meinen mittels LPT3 angeschlossenen und umgeleiteten Drucker ausdrucken. Der Brief ist über die Steuersequenzen EPSON-Printer-Code formatiert und enthält verschieden strukturierte Schriftarten für Briefkopf, -Ende, wie Groß- Fettdruck etc.
Danach muß ich das Blatt wieder einscannen um eine per Email sendbare Datei (zB. jpg) zu erstellen.
Ritchie39
Und genau dazu dient die Lösung, die ich dargelegt habe, einfach - ohne den geringsten SchnickSchnack und mit
dem geringst möglichen Zeitaufwand und der größten Effizienz verbunden. PUNKT!

Deine Ausführungen nach dem "das ist nun Cl*pper ... und für Windows :?:" in Ehren aber das ist hier eindeutig NICHT das Thema

Re: Drucke für Emails speichern

Verfasst: Mi, 10. Jul 2019 10:08
von Jan
Clipper ist schon ewig her ... da fehlen mir jetzt ein paar Details in den Erinnerungen.

Was aber vermutlich möglich sein müsste ist: Ausdruck in eine Datei schreiben. Und diese Datei dann per blat als Anhang vermailen. Blat ist eine sehr kleine, aber sehr umfangreiche Bibliothek (nur eine einzige dll), mit der man Mails sehr einfach und schnell versenden kann. Einziger Nachteil: Die kann kein TLS. Daher stelle ich das alles bei mir um auf SMTPClient(), aber das ist natürlich unter Clipper nicht machbar.

Infos und Download unter https://www.blat.net/ Ansonsten fragen. Es gibt hier mehrere Forenteilnehmer, die das benutzen.

Jan

Re: Drucke für Emails speichern

Verfasst: Mi, 10. Jul 2019 15:15
von flanelli
es lässt sich alles mittels der extrem einfach zu handhabenden DOSPRINTER.EXE erledigen,
natürlich nicht nur die perfekte Konvertierung der Datei in die gedruckt wurde zu einem PDF
sondern auch ein Emailversand in verschiedensten Varianten und vor allem auch alles
so richtig schön "silent" wenn man es möchte.

Man konnte sich in Clipper-Zeiten oft mit relativ einfachen workarounds helfen
um Dinge zu realisieren die Clipper offiziell gar nicht konnte aber es dennoch möglich war
und so manches hatte man damals eben auch mit kleinen "Hilfsprogrammen" via Runshell
wunderbar erledigen können ( Wie ja auch heute unter XBASE++ so manches auch nur mittels 3-rd Party machbar ist
wenn man sich den Aufwand es selbst zu proggen ersparen möchte )

PS.: Das schöne an den Erfahrungen seit es Clipper überhaupt gibt, ist dass man gelernt hat mit
Problemen umzugehen die schier unlösbar erschienen und man ständig gegen das Damoklesschwert des
Arbeitsspeichers ankämpfen musste.
Das führte auch zwangsläufig dazu, dass man damals Applikationen entwickelte, die auch später in der DOS-Shell
unter WIn95/98/NT/XP problemlos liefen und auch heute im Zeitalter WIn10 in VM's klaglos rennen.

PPS.: Und das Ergebnis der trickreichen Alt-Clipperianer spiegelt sich halt auch beim Arbeiten mit Xbase++ wieder,
man jammert nicht lange rum, weil die Väter des Xbase++ zuweilen *smile* stiefmütterlich mit ihren Kids
umgehen denn das war man auch von den "Nantucket-Eltern" ja schon gewohnt und hilft sich selbst
bzw. kann in so vielen Belangen auf die Erfahrung und die Kreativität der Mitglieder des "Inoffiziellen deutschen Xbase-Forums"
zurückgreifen. In den allermeisten Fällen sind auch die Diskussionen hier sehr sachlich und themenkonsistent.
( Mein Posting in diesem Falle ist allerdings nun leider auch ab Absatz 2 etwas abseits des eigentlichen Themas, das aber ja
bereits erschöpfend und dem Ziel entsprechend erfolgreich abgehandelt wurde :D

Re: Drucke für Emails speichern

Verfasst: Do, 11. Jul 2019 3:00
von Ritchie39
Hallo Miteinander,
vielen Dank erst mal für die vielen Beiträge. :)
Nun habe ich erst mal genug Lesestoff. Flanelli, was Du geschrieben hast, klingt einleuchtend, und so werde
ich in einer ruhigen Stunde dies noch mal genau lesen, sacken lassen, und mich dann an die Lösung des Problems machen. :idea:
Da ich das Programm seit langen auch unter XBase fahre, wird das dort dann natürlich auch implementiert.
Aber dort habe ich noch ein weiteres Problem mit dem im Clipper bewährten memodit(), wo ich die Datei erst bearbeite, und sie dann als Txt.file mittels
sdf speichere, und so sie bei Bedarf wieder einspielen kann.
Doch dazu erst später in einer gesonderten Anfrage.

LG Ritchie :wink:

Re: Drucke für Emails speichern

Verfasst: Do, 11. Jul 2019 5:33
von AUGE_OHR
Ritchie39 hat geschrieben: Do, 11. Jul 2019 3:00 Da ich das Programm seit langen auch unter XBase fahre, wird das dort dann natürlich auch implementiert.
jetzt muss ich mal fragen wieso du nach Cl*pper Lösungen fragst wenn du es schon nach Xbase++ umgesetzt hast :?:

klar arbeitet die Drucker auch mit den ESC Sequenzen im VIO Modus aber die Umstellung beim Drucken scheint dein eigentliches Problem zu sein :?:

wenn du noch mit Cl*pper arbeitest dann geht es ja nur mit 32 Bit OS ... oder 64 Bit OS mit Emulation :?:

Re: Drucke für Emails speichern

Verfasst: Sa, 13. Jul 2019 18:35
von Ritchie39
Hallo AUGE_Ohr,

ich habe mein Programm bereits vot ca 20 Jahren auch an XBase angepasst. Aber es gibt halt da noch gewisse Probleme, die ich bis jetzt nicht lösen konnte, wie zB. in meinem letzten Post angesprochen, mit memoedit(), oder auch dem browse() -Befehl. :(
Und so habe ich mein Programm so programmiert, daß es nahezu noch auf 3 Ebenen läuft: Unter Dbase III+, zum kurzen testen, unter Clipper S'87 und natürlich unter XBase.

Mit dem Betriebssystem habe ich keine Probleme, da ich auf allen PC's im Netz Windows 7 32 Bit verwende. Für meine kleines Netzwerk im Büro genügt das vollkommen. Und da ich kein Gamer, oä. bin, sind 32 Bit vollkommen ausreichend. Und auch Windows 10 wird ja mit 32 Bit angeboten.

Damals gab es noch kein Forum, das mir weiterhelfen konnte, und so arbeite ich überwiegend noch mit Clipper S'87. Aber wenn ich meine Probleme hier lösen kann, spricht nichts gegen die gesamte XBase-Anwendung.

Mein größtes Problem ist aber, daß ich langsam an die Geschäftsübergabe denken muß. Und so muß ich langsam meinen Sohn in die Programmierung einführen. Davon hat er leider keine Ahnung, und je umfangreicher das Programm, desto komplizierter wird das. :?

Re: Drucke für Emails speichern

Verfasst: So, 14. Jul 2019 3:51
von AUGE_OHR
hi,
Ritchie39 hat geschrieben: Sa, 13. Jul 2019 18:35 daß es nahezu noch auf 3 Ebenen läuft: Unter Dbase III+, zum kurzen testen, unter Clipper S'87 und natürlich unter XBase.
Ok Damit haben wir nun einen besseren Überblick auf welchem "Level" wir sprechen. es wäre für Xbase++ also VIO und kein GUI Modus.

wenn ich das richtig verstehe ist Programmieren nicht deine Haupt-Geschäft sondern dein Code ist im Laufe der Zeit aus den Anforderungen deines Geschäft gewachsen.

Frage : um welche Grössenordnung sprechen wir :?:

Code: Alles auswählen

DIR *.PRG /S
DIR *.DBF /S
Ritchie39 hat geschrieben: Und so muß ich langsam meinen Sohn in die Programmierung einführen. Davon hat er leider keine Ahnung, und je umfangreicher das Programm, desto komplizierter wird das. :?
natürlich wäre es schön wenn er auch programmieren könnte ... aber die Rechnungen kommen von den Aufträgen was dein Geschäft ist, oder :?:

Hier im Forum gibt ja genügend Programmierer die in der Lage wären deinen Source zu betreuen und dein Sohn könnte sich um das Geschäft kümmern.

eine Erweiterung in Form des XbpPrinter() würde einige deiner ESC Sequenz Probleme lösen ...