Deutsch
Programmierung

Drucken ist nicht möglich!

 

Manfred
Barei
Hallo, habe bei fogendem Codebeispiel folgende Fehlermeldung


CLS
StartPrint "*Testausdruck"

If %Printing

    MoveTo 34, 34
    LineTo 34 + 343, 34
    LineTo 34 + 343, 34 + 343
    LineTo 34, 34 + 343
    LineTo 34, 34
    EndPrint

EndIf

end

Ich rufe zum Drucken den Druckerdialog auf und wähle hier "Microsoft Print to PDF" um die Datei 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 läuft.

Für die Hilfe im voraus schon einmal Danke

Gruß

19 kB
Hochgeladen:10.01.2021
Ladeanzahl66
Herunterladen

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
Hallo,

nein, es geht darum wenn ich den 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 für den Dateinahmen unter der ich die PDF speichern möchte lande und hier abbrechen wähle kommt diese Fehlermeldung.

Gruß

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 über den Druckerdialog der Drucker
' "Microsoft Print to PDF" eingestellt, darauf erscheind ein
'Dialog um den Dateinamen für die PDF-Datei 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?

Gruß

PS. Das hier nur ein Rechteck Gedruckt wird ist dem Beispiel geschuldet, stammt aus der Profan Hilfe. Ich wollte hier nicht meine ganze Druckausgabe einstellen.

RGH
Der Hintergrund ist Folgender:

Die Systemvariable %Printing wird auf TRUE gesetzt, sobald Du den Druckerauswahl-Dialog mit "OK" beendet hast. Das hast Du ja getan. Also wird der Druckprozess gestartet.
Wenn anschließend beim Drucken etwas schief läuft, gibt es diese Fehlermeldung. Da Du, aus welchen Gründen 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.

Gruß 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.

Gruß
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-Datei
abspeichern muß, dass heist 1-100 mal die Druckausgabe aufrufen Speicherort wählen und Dateiname vergeben und jede PDF abspeichern.
Kann mann das nicht über Printbefehle oder Systemvariablen realisieren?

Das heist Speicherort und Dateiname vergeben PDF Printer aufrufen und Drucken und das alles ohne Druckdialog?

Gruß und Danke für 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.


Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie