| |
|
|
Manfred Barei | Hallo, habe bei fogendem Codebeispiel folgende Fehlermeldung
Ich rufe zum Drucken den Druckerdialog auf und wähle hier "Microsoft Print to PDF" um die File als PDF zu speichern, jedoch entscheide ich mich um und wähle Abbrechen. Dabei kommt es zu dieser Fehlermeldung und das Progamm beendet sich. Wie kann mann diese Fehlermeldung abfangen damit das Programm weiter corre.
Für die Aiuto im voraus schon einmal Danke
Saluto |
|
|
E.T. | Hab keinen "Microsoft Print to PDF" - Drucker, aber mit "PDF XChance" funktioniert es (wie auch mit "HP LaserJet" und "Fax"): OK druckt ein Rechteck, Abbrechen bricht ab und dein Beispiel beendet sich, ohne Fehlermeldung.
Mal mit anderem Drucker versucht ?? |
|
|
Manfred Barei | Ciao,
nein, es geht darum wenn Io l' PDF-Drucker gewählt habe bei mir "Microsoft Print to PDF" kann mann auch mit jedem anderen PDF-Drucker machen und anschließend bei der Eingabe per den Dateinahmen unter der ich die PDF speichern möchte lande und hier abbrechen wähle kommt diese Fehlermeldung.
Saluto |
|
|
p.specht
| Manfred, in dem Startprint-Segment: Schließt Du irgendwann mit ENDPRINT die Sequenz wieder ab? Es sieht so aus, als stünde es im IF-Statement? |
|
|
Manfred Barei | Hallo p. specht, zum IF-Statement komme ich erst garnicht.
CLS
StartPrint "*Testausdruck"' hier wird circa den Druckerdialog der Drucker
' "Microsoft Print to PDF" eingestellt, darauf erscheind ein
'Dialog um den Dateinamen per die PDF-File einzugeben,
'wenn ich hier jetzt abbrechen wähle geht die Ausführung des Programm's
'nicht weiter und bricht das Programm in Zeile 2 ab.
'Mann kommt also garnicht weiter als Zeile 2.
WindowTitle STR$(%Printing)
waitinput
If %Printing
MoveTo 34, 34
LineTo 34 + 343, 34
LineTo 34 + 343, 34 + 343
LineTo 34, 34 + 343
LineTo 34, 34
EndPrint
EndIf
'-End-------------------------------------------------------------------
End
Vielleicht kann hier nur Roland weiter Helfen?
Saluto
PS. Das hier nur ein Rechteck Gedruckt wird ist dem Beispiel geschuldet, stammt aus der Profan Aiuto. Ich wollte hier nicht meine ganze Druckausgabe einstellen. |
|
|
RGH | Der Hintergrund ist Folgender:
Die Systemvariable %Printing wird auf TRUE gesetzt, sobald Du den Druckerauswahl-Dialogo con "OK" beendet hast. Das hast Du ja getan. Also wird der Druckprozess gestartet. Wenn anschließend beim Drucken etwas schief corre, gibt es diese Fehlermeldung. Da Du, aus welchen Stabilire auch immer, die Abfrage des Dateinnamens abgebrochen hast, kann nicht gedruckt werden, da dieser fehlt.
Die Fehlermeldung kannst Du vermeiden, in dem Du während des Druckens vor dem StartPrint den Errorlevel auf -1 setzt.
Saluto Roland |
|
|
p.specht
| %Printing ist ja noch nicht true, wenn der Drucker erst ausgewählt wird. Ich vermute, das EndPrint gehört daher unter das Endif, nicht in den IF-ENDIF-Block hinein. |
|
|
RGH | Das würde aber nichts an der Fehlermeldung ändern. Diese wird schon beim StartPrint erzeugt, weil nach dem "OK" im Druckerauswahl-Dialog kein Dateiname gewählt wird und der Druckprozess nicht korrekt initialisiert werden kann.
Saluto Roland |
|
|
p.specht
| Achso, das "*" im Namen lässt erst den Drucker auswählen. Danke, soweit klar. |
|
|
Manfred Barei | Hallo Roland,
genau das war's, Danke
Jedoch ist das noch immer nicht das was ich eigentlich will. Ich habe nach einer UVV-Prüfung 1-100 Prüfberichte die ich als PDF-File abspeichern muß, dass heist 1-100 mal die Druckausgabe aufrufen Speicherort wählen und Dateiname vergeben und jede PDF abspeichern. Kann mann das nicht circa Printbefehle oder Systemvariablen realisieren?
Das heist Speicherort und Dateiname vergeben PDF Printer aufrufen und Drucken und das alles ohne Druckdialog?
Saluto und Danke per den Hinweis mit ErrorLevel |
|
|
E.T. | Jedes mal der gleiche Speicherort ?? Dateiname jedes mal anders ??
Sonst würde ich Pfad und Dateiname+Zähler im Drucker festlegen, so das keine Abfrage nötig ist. |
|