Druckerschächte setzen mit API
Moderator: Moderatoren
Druckerschächte setzen mit API
Guten Tag
Ich habe hier ein paar gute Beiträge gesehen und hoffe ihr wisst auch hierzu eine Antwort.
Ich möchte gerne mit einer API-Funktion die Druckerschächte abfragen.
Da ich mit R&R Report keine Druckerschächte mit einer Nummer grösser als 256 ansteuern kann, möchte ich versuchen falls ein Schacht grösser ist als 256 diesen mit einer API-Funktion anzusteuern.
Vielen Dank
Gruss Jules
Ich habe hier ein paar gute Beiträge gesehen und hoffe ihr wisst auch hierzu eine Antwort.
Ich möchte gerne mit einer API-Funktion die Druckerschächte abfragen.
Da ich mit R&R Report keine Druckerschächte mit einer Nummer grösser als 256 ansteuern kann, möchte ich versuchen falls ein Schacht grösser ist als 256 diesen mit einer API-Funktion anzusteuern.
Vielen Dank
Gruss Jules
Hallo Andreas
darum möchte ich eben mit der Windows API denn Schacht abfragen und speichern und diesen dann wieder dem R&R übergeben damit beim nächsten mal wieder der zuletzt verwendete Druckerschacht genommen wird.
Falls ich jetzt auf einen Schacht drucke der grösser ist als 255 dann nimmts beim nächsten mal einfach Schacht 1, statt den vorher gewählten.
Vielen dank für deine Hilfe, aus diesem Druckerauswahlfenster ist es möglich einen Druckerschacht grösser 255 anzusteuern jedoch kann er dann diesen nicht speichernlass doch dir von R&R das Druckerauswahlfenster anzeigen, wo du die Einstellungen ganz normal setzen kannst.
darum möchte ich eben mit der Windows API denn Schacht abfragen und speichern und diesen dann wieder dem R&R übergeben damit beim nächsten mal wieder der zuletzt verwendete Druckerschacht genommen wird.
Falls ich jetzt auf einen Schacht drucke der grösser ist als 255 dann nimmts beim nächsten mal einfach Schacht 1, statt den vorher gewählten.
- Lewi
- 1000 working lines a day
- Beiträge: 830
- Registriert: Di, 07. Feb 2006 14:10
- Wohnort: Hamburg
- Danksagung erhalten: 2 Mal
Hallo Jules,
ich habe das Problem wie folgt gelöst:
Es wird ein 2.tes Mal der entsprechende Drucker unter einem anderem Namen installiert. Bei dem zweitem indentischen Drucker setzt du über die Druckereingenschaften einen anderen Standardausgabeschacht.
Durch entsprechende Druckernamensbezeichnungen kannst bei der Auswahl des Druckers den Anwender entscheiden lassen, auf welchem Papier die Ausgabe gedruckt werden soll.
Beispiel:
- LaserJet (Blanko-Papier)
- LaserJet (Firmenbogen)
Falls deine Anwendung die Möglichkeit zuläßt, dass Formulare bestimmten Druckern zugeordnert werden können, könnstest Du so programmseitig die Ausgabe unter Einbeziehung der Druckschächte automatisieren ohne das vom Anwender die Druckausgabe über den Drucker-Eigenschaftsdialog gesteuert werden muß.
Gruß,
Olaf
ich habe das Problem wie folgt gelöst:
Es wird ein 2.tes Mal der entsprechende Drucker unter einem anderem Namen installiert. Bei dem zweitem indentischen Drucker setzt du über die Druckereingenschaften einen anderen Standardausgabeschacht.
Durch entsprechende Druckernamensbezeichnungen kannst bei der Auswahl des Druckers den Anwender entscheiden lassen, auf welchem Papier die Ausgabe gedruckt werden soll.
Beispiel:
- LaserJet (Blanko-Papier)
- LaserJet (Firmenbogen)
Falls deine Anwendung die Möglichkeit zuläßt, dass Formulare bestimmten Druckern zugeordnert werden können, könnstest Du so programmseitig die Ausgabe unter Einbeziehung der Druckschächte automatisieren ohne das vom Anwender die Druckausgabe über den Drucker-Eigenschaftsdialog gesteuert werden muß.
Gruß,
Olaf
- AUGE_OHR
- Marvin
- Beiträge: 12903
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 44 Mal
hi
siehe C:\ALASKA\XPPW32\INCLUDE\xbpdev.ch
gruss by OHR
Jimmy
... aber die Xbase++ Konstanten gehen nur bis 15 ...brandelh hat geschrieben: mit der XbpPrinter:paperBins() Methode kannst du die verfügbaren Schächte als Array mit Name und ID abfragen. Ich kann mir nicht vorstellen, dass die ID hier von der in R&R abweicht.
siehe C:\ALASKA\XPPW32\INCLUDE\xbpdev.ch
gruss by OHR
Jimmy
- AUGE_OHR
- Marvin
- Beiträge: 12903
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 44 Mal
hi,
benutzt und bin auch davon augegangen da Xbase++ nur die zurück
geben kann ... da muss ich wohl mein ASCAN(aPrinter,nSelect) > 0
erweitern um die > 15 abzufangen
danke, gruss by OHR
Jimmy
das hab ich noch nicht gewusst. ich hab bisher immer nur die Konstantenbrandelh hat geschrieben: die Konstanten meinte ich aber nicht.
Ich hatte schon Rückgabewerte über 200 im Array, ob es nun aber unter oder über 256 war, weiß ich nicht mehr.
benutzt und bin auch davon augegangen da Xbase++ nur die zurück
geben kann ... da muss ich wohl mein ASCAN(aPrinter,nSelect) > 0
erweitern um die > 15 abzufangen
danke, gruss by OHR
Jimmy