Autor | Thema: PrinterDialog testen | | Datum:28.05.01 22:11 
(NSp_ware@t-online.de) | |
Hallo Leute,
Ich experimentiere zur Zeit mit der API-Funktion PrintDlg herum. Über diese Funktion möchte ich den Gerätekontex des erwählten Druckers erhalten. Bei mir (privat: WIN98 und 24-Nadeldrucker; beruflich: WIN-NT 4.0 und Laserdrucker) funktioniert dies auch gut. Bei meinem Kumpel mit Win98 und Tintenstrahler wird kein Kontex zurück geliefert. Warum weiß ich nicht.
Ich möchte Euch nun bitten, untenstehenden Code mal zu testen, und unter Angabe von System und Drucker hier im Forum oder direkt über eMail an mich mitzuteilen, ob ein Kontex (Longinteger-Zahl) ermittelt werden konnte.
Schon mal Danke für Euere Mühe.
Norbert
DEF PrintDlg(1) ! "COMDLG32", "PrintDlgA"
DECLARE l_erfolg&, printdlgstru#, l_hDCPrt&
DIM printdlgstru#, 66
LONG printdlgstru#, 0 = 66
LONG printdlgstru#, 4 = %HWND
LONG printdlgstru#, 8 = 0
LONG printdlgstru#, 12 = 0
LONG printdlgstru#, 16 = 0
LONG printdlgstru#, 20 = $1C010C
WORD printdlgstru#, 24 = 0
WORD printdlgstru#, 26 = 0
WORD printdlgstru#, 28 = 0
WORD printdlgstru#, 30 = 0
WORD printdlgstru#, 32 = 1
LONG printdlgstru#, 34 = 0
LONG printdlgstru#, 38 = 0
LONG printdlgstru#, 42 = 0
LONG printdlgstru#, 46 = 0
LONG printdlgstru#, 50 = 0
LONG printdlgstru#, 54 = 0
LONG printdlgstru#, 58 = 0
LONG printdlgstru#, 62 = 0
LET l_erfolg& = PrintDlg (printdlgstru#)
IFNOT (l_erfolg& = 0)
'-> wenn PrintDlg mit OK abgeschlossen wurde und erfolgreich war
LET l_hDCPrt& = LONG(printdlgstru#, 16)
MESSAGEBOX STR$(l_hDCPrt&), "Drucker-Kontex :", 32
ELSE
'-> PrintDlg wurde abgebrochen oder war nicht erfolgreich
LET l_hDCPrt& = 0
MESSAGEBOX "PrintDlg konnte keinen Drucker-Kontex liefern !", "Achtung :", 32
ENDIF
DISPOSE printdlgstru#
END
|
| | Datum:29.05.01 06:49 
(info@ebs-haase.de) | |
Hallo!
Bei mir wird OK gemeldet. Win Nt und Laserjet 6 L.
Gruß Bernd
|
| | Datum:29.05.01 11:04 
(mail@stschnell.de) | |
Hallo,
auch bei mir funktioniert der Code.
WinNT mit Drucker im Netz.
Tschüss
Stefan
|
| | Datum:29.05.01 11:28 
(rgh-soft@t-online.de) | |
Auch bei mir in der Firma (Win NT 4 Sp 6, vorgeschalteter Fineprint-Driver) funktioniert es.
Der Fineprint-Driver sorgt dafür, mehrere Seiten verkleinert auf einer zu drucken und wird als Druckertreiber eingerichtet. Auch mit einer derart "exotischen" Konfiguration funktioniert es.
|
| | Datum:29.05.01 11:32 
(werasoft@web.de) | |
... funzt! W95b + Epson St. Color 400
MfG
Rainer
|
| | | Datum:29.05.01 17:23 
(GeroldFlaig@gmx.de) | |
Ich habe hier auch die Kombination mit vorgeschaltetem Fineprint und Laserjet 4. Kein Problem. Funktioniert bestens..
|
| | Datum: 29.05.01 17:51 
(rgh-soft@t-online.de) | |
Bei mir zuhause (Win 95a, Officejet HP 635 Tintenstrahl) auch keine Probleme!
|
|
|