Allgemeine Fragen zur PROFAN Programmierung
Views (Heute): 249674 (11110)
  Suchen
 Zurück zur Übersicht
 AutorThema: PrinterDialog testen
Norbert Spörl
Datum:28.05.01 22:11 Antwortenals Email verschicken (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




Bernd
Datum:29.05.01 06:49 Antwortenals Email verschicken (info@ebs-haase.de) 


Hallo!

Bei mir wird OK gemeldet. Win Nt und Laserjet 6 L.

Gruß Bernd


Stefan Schnell
Datum:29.05.01 11:04 Antwortenals Email verschicken (mail@stschnell.de) 


Hallo,
auch bei mir funktioniert der Code.
WinNT mit Drucker im Netz.
Tschüss
Stefan



Roland G. Hülsmann
Datum:29.05.01 11:28 Antwortenals Email verschicken (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.


Rainer Weicht
Datum:29.05.01 11:32 Antwortenals Email verschicken (werasoft@web.de) 


... funzt! W95b + Epson St. Color 400

MfG
Rainer


Oliver Hahn
Datum:29.05.01 16:40 Antwortenals Email verschicken (oliver.hahn@landratsamt-ansbach.de) 


NT4, ServicePack5, Drucker HP Laserjet 5 an NOVELL Printserver (Netzdrucker): alles ok!

Oliver


Gerold Flaig
Datum:29.05.01 17:23 Antwortenals Email verschicken (GeroldFlaig@gmx.de) 


Ich habe hier auch die Kombination mit vorgeschaltetem Fineprint und Laserjet 4. Kein Problem. Funktioniert bestens..


Roland G. Hülsmann
Datum: 29.05.01 17:51 Antwortenals Email verschicken (rgh-soft@t-online.de) 


Bei mir zuhause (Win 95a, Officejet HP 635 Tintenstrahl) auch keine Probleme!


 Zurück zur Übersicht