AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Druckerschächte / "Inkompatible Druckeinstellungen"
Thema durchsuchen
Ansicht
Themen-Optionen

Druckerschächte / "Inkompatible Druckeinstellungen"

Ein Thema von uligerhardt · begonnen am 22. Mär 2011 · letzter Beitrag vom 23. Mär 2011
Antwort Antwort
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.735 Beiträge
 
Delphi 2007 Professional
 
#1

Druckerschächte / "Inkompatible Druckeinstellungen"

  Alt 22. Mär 2011, 15:58
Hallo zusammen!

Wir haben hier einen Drucker, bei dem in den Druckeinstellungen nicht verwendbare Schächte aufgeführt werden:
druckeinstellungen1.png
(Die mit den gelben Warndreiecken.)

Wenn ich einen solchen Schacht im oben abgebildeten Dialog auswähle und OK drücke, kommt eine Fehlermeldung namens "Inkompatible Druckeinstellungen":
inkompatibledruckeinstellungen.png

Wenn ich den gleichen Schacht hingegen per Quellcode (mit dem üblichen GetPrinter/ResetDC-Gebastel) oder in einem TPrinterSetupDialog
druckeinstellungen2.png
auswähle, wird beim Druck und im Dialog ganz oben stillschweigend auf einen anderen Schacht umgestellt. Der Dialog unten zeigt aber nach wie vor den nicht verwendeten Schacht an, ebenso liefert z.B. LeseAktuellenSchacht diesen zurück.

Wie kann ich diesen Fall erkennen, um eine Warnmeldung auszugeben oder das Wählen dieses Schachts zu verhindern?

Update:
Zitat von http://support.microsoft.com/kb/194789/en-us#appliesto:
NOTE: This approach lists all PaperBins known to the printer driver, but every bin listed is not guaranteed to be physically installed on the printer. For example, some printers are available with an optional envelope feeder. This selection is reported by the API even if that feature is not currently installed on the printer.
Ein Hinweis zur Lösung ist natürlich nicht zu finden.
Uli Gerhardt

Geändert von uligerhardt (22. Mär 2011 um 16:44 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#2

AW: Druckerschächte / "Inkompatible Druckeinstellungen"

  Alt 22. Mär 2011, 17:10
Ich vermute mal, Du hast eine Bidirektionale Druckerschnittstelle, also sollte der Treiber im Prinzip dazu in der Lage sein, den Drucker zu fragen wie es mit den Paperbehältern aussieht.
Ob das MS-API damit umgehen kann steht auf einem anderen Blatt.
Hat Lexmark dazu nichts zu bieten?

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.735 Beiträge
 
Delphi 2007 Professional
 
#3

AW: Druckerschächte / "Inkompatible Druckeinstellungen"

  Alt 22. Mär 2011, 17:27
Ich vermute mal, Du hast eine Bidirektionale Druckerschnittstelle, also sollte der Treiber im Prinzip dazu in der Lage sein, den Drucker zu fragen wie es mit den Paperbehältern aussieht.
Ob das MS-API damit umgehen kann steht auf einem anderen Blatt.
Hat Lexmark dazu nichts zu bieten?
Ich hab schon stundenlang im Druckerdialog probiert und gegoogelt, aber nix gefunden. Und ich will auch keine Lexmark-spezifische Lösung, sondern eine, die das Problem auch bei unseren Kunden mit deren Druckern erschlägt, wenn es dort auftritt.
Uli Gerhardt
  Mit Zitat antworten Zitat
Satty67

Registriert seit: 24. Feb 2007
Ort: Baden
1.566 Beiträge
 
Delphi 2007 Professional
 
#4

AW: Druckerschächte / "Inkompatible Druckeinstellungen"

  Alt 22. Mär 2011, 21:04
Was meldet die API Funktion DeviceCapabilities, wenn DC_BINNAMES bzw. DC_BINS abgefragt wird.

Immer alle installierte oder (insbesondere letzteres) nur die aktuell verfügbaren?

Ersteres ist ja bereits eine Schacht-Liste, weshalb zweiteres eine True/False Liste sein müsste (gibt Word-Array zurück)

Geändert von Satty67 (22. Mär 2011 um 21:10 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.735 Beiträge
 
Delphi 2007 Professional
 
#5

AW: Druckerschächte / "Inkompatible Druckeinstellungen"

  Alt 23. Mär 2011, 07:50
Was meldet die API Funktion DeviceCapabilities, wenn DC_BINNAMES bzw. DC_BINS abgefragt wird.

Immer alle installierte oder (insbesondere letzteres) nur die aktuell verfügbaren?

Ersteres ist ja bereits eine Schacht-Liste, weshalb zweiteres eine True/False Liste sein müsste (gibt Word-Array zurück)
Beide geben die Liste mit allen Schächten zurück:
bins.png
Das Eingeklammerte kommt von DC_BINS (umgesetzt auf die DMBIN_*-Konstanten, soweit möglich), der Rest von DC_BINNAMES.
Uli Gerhardt
  Mit Zitat antworten Zitat
Satty67

Registriert seit: 24. Feb 2007
Ort: Baden
1.566 Beiträge
 
Delphi 2007 Professional
 
#6

AW: Druckerschächte / "Inkompatible Druckeinstellungen"

  Alt 23. Mär 2011, 08:07
OK, da hab' ich die Beschreibung zu DC_BINS wohl falsch interpretiert.

Hätte gleich bei MSDN schauen sollen. In der Delphi Hilfe steht zu "dmDefaultSource" nur Reserved. Bei MSDN, dass der Wert ein Flag für den BiN-Typ ist (Sorry)
  Mit Zitat antworten Zitat
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.735 Beiträge
 
Delphi 2007 Professional
 
#7

AW: Druckerschächte / "Inkompatible Druckeinstellungen"

  Alt 23. Mär 2011, 08:24
OK, da hab' ich die Beschreibung zu DC_BINS wohl falsch interpretiert.

Hätte gleich bei MSDN schauen sollen. In der Delphi Hilfe steht zu "dmDefaultSource" nur Reserved. Bei MSDN, dass der Wert ein Flag für den BiN-Typ ist (Sorry)
Dieser Druckkram ist ja auch verwirrend (um's mal gelinde zu sagen). Eine Wüste aus API, schlecht programmierten Treibern und nicht nachvollziehbaren Fehlern.
Uli Gerhardt
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:11 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz