ERLEDIGT
JA
JA
ANTWORTEN
5
5
ZUGRIFFE
695
695
EMPFEHLEN
-
Hallo Leute,
ich habe in unserem Programm was entdeckt, wobei ich nicht sicher bin, ob es tatsächlich ein Problem ist oder nur eine lokale Anomalie bei mir:
Wir drucken bei einer PDF-Konvertierungsfunktion auf einen entsprechenden PDF-Drucker und lesen das umgewandelte Dokument wieder ein.
Das sieht wie folgt aus:
Code :1 2 3 4 5 6 7 8 9 10 11
ret = ShellExecute(GetDesktopWindowHWND(), "printto", fn, "Consolidate", "", 1) 'MLHIDE If ret >= 32 Then Exit Sub 'Succesfull Else ret = 0 stprname = Printer.DeviceName If setDefaultPrinter("Consolidate") Then ret = ShellExecute(GetDesktopWindowHWND(), "print", fn, "", "", 1) Call setDefaultPrinter(stprname) End If
Nun klappte das wahrscheinlich bisher immer, weil printTo immer soweit einen korrekten Wert geliefert hat. Nun muss ich aber für das Drucken von POT-Dateien print verwenden.
den Standard-Drucker setzen wir wie folgt:
Code :1 2 3 4 5 6 7
Dim pt As Printer For Each pt In Printers If pt.DeviceName = Printername Then 'MLHIDE Set Printer = pt Exit For End If Next
Das Printer-Objekt wird auch entsprechend gesetzt, aber in der Drucker-Anzeige ändert sich das Häckchen für den Standard Drucker nicht.
Daher ist entweder das Problem, dass der Standard-Drucker gar nicht richtig gesetzt wird, obwohl das Printer-Objekt sich ändert, oder aber das der Print-Befehl dies ignoriert.
Ich habe testweise bei Print versucht den Drucker direkt mitzugeben, aber sogar der wird ignoriert.
Hat hier jemand evtl. Erfahrungen mit dem Print-Befehl?
Wie immer vielen Dank im Voraus für alle Antworten.
Müller Matthias
-
14.06.11 11:25 #2
print druckt ja nur aus den Standarddrucker, da scheint es Probleme damit zu geben, den zu setzen. Welche VB-Version benutzt du (VB/VBA)?
Der Doc!A: Hilfe, ich hab zwei Dateien hinzugefügt und nun sind die anderen weg
B: Die Scrollbar da rechts ist dir schon mal aufgefallen?
-
VB6
oben siehst Du ja, wie wir den Standard-Drucker setzen.
Gibt es damit evtl. ein Problem? Wie gesagt, das Printer-Objekt hätte den richtigen Wert, zumindest laut DeviceName, aber im Drucker-Explorer ändert sich das Häckchen nicht, welches anzeigt, welcher Drucker Standard ist.
-
14.06.11 16:39 #4
Mangels VB6 kann ich nicht testen, da aber hier eine doch etwas umfangreichere Anleitung ist, dürfte dies doch nicht ganz so simpel sein, wie es scheint. Probier den Code mal aus (er lässt sich eventuell straffen), ob das dir hilft.
Der Doc!A: Hilfe, ich hab zwei Dateien hinzugefügt und nun sind die anderen weg
B: Die Scrollbar da rechts ist dir schon mal aufgefallen?
-
Hm ja, sehr merkwürdiger Zufall, dass das nie aufgefallen ist.
Werde es wohl tatsächlich so umbauen müssen.
Danke Doc.
-
Klappt perfekt som zumindest lokal.
Ähnliche Themen
-
HttpRequest manuell setzen mit Request.Params.Set("Bla", "Blub")
Von thomrohd im Forum .NET Web und KommunikationAntworten: 0Letzter Beitrag: 11.05.06, 11:16 -
link auf "enter" oder "esc" taste setzen?
Von Atti im Forum Javascript & AjaxAntworten: 3Letzter Beitrag: 24.08.05, 01:41 -
Standard Drucker setzen oder ermitteln
Von killerbiene75 im Forum VisualStudio & MFCAntworten: 7Letzter Beitrag: 01.06.05, 13:57 -
WinExec, ShellExecute, System("...") Unterschied ?
Von Coalminer im Forum C/C++Antworten: 3Letzter Beitrag: 20.03.05, 19:54 -
ShellExecute "print"
Von BraveNewWorld im Forum Visual Basic 6.0Antworten: 1Letzter Beitrag: 15.03.04, 15:02





Zitieren

Login





