Druckereigenschaften auslesen

Für allgemeine Fragen zur Programmierung mit PureBasic.
Amor_2001
Beiträge: 75
Registriert: 14.12.2011 19:20

Druckereigenschaften auslesen

Beitrag von Amor_2001 »

Hallo,

ich muss für ein großes Projekt bestiimmte Eigenschaften von installierten Druckern (300 Stück, unterschiedlich ausgestattet und an verschiedenen Standorten) ermitteln.
Z.B.: Anzahl Papierkassetten, Heften (ja/nein), Lochen (ja/nein), Zählerstand, Faxfunktion (ja/nein) usw.
Leider habe ich keinen Anstz, wie man das mit PB lösen könnte. Habe mir schon mehrere Printer-Lib's angeschaut, bin aber immer noch ratlos.

Hat jemand von euch eventuell einen Lösungsansatz für mich?

Danke schon mal für die Mühe.
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Druckereigenschaften auslesen

Beitrag von RSBasic »

Um die einzelnen Druckerinformationen und die jeweiligen Zählerstände auslesen zu können, kannst du auf die SNMP-Schnittstelle zugreifen.
Suche hier im Forum nach "SNMP", dann findest du passende Threads mit Beispielcodes für die Ansprechung eines Druckers.
Um eine bestimmte Information gezielt zu ermitteln, kannst du mit Hilfe des MIB-Baumes auf eine OID zugreifen und den Wert auslesen.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Amor_2001
Beiträge: 75
Registriert: 14.12.2011 19:20

Re: Druckereigenschaften auslesen

Beitrag von Amor_2001 »

Ach du grüne Neune, das sieht aber komploziert aus. So weit bin ich noch nicht fortgeschritten, um damit fertig zu werden :cry:
Gibt es auch was einfacheres?
Habe mal SNMP und Drucker in diei Suchfunktion gegeben und hatte nur 3 Treffer. :(
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Druckereigenschaften auslesen

Beitrag von RSBasic »

Such mal nur nach "SNMP", dann bekommst du auch mehr Suchergebnisse. U.a.: http://purebasic.fr/german/viewtopic.php?f=8&t=3659
Den von Torakas bereitgestellten Code habe ich zwar nicht getestet, aber damit hast du schon mal eine Vorlage und du kannst mit Hilfe der Funktion "ReadSNMP()" auf die gewünschte OID zugreifen, um beispielsweise den Start- und Endzählerstand während eines Druckvorgangs auszulesen, um die Anzahl der gedruckten Blätter zu ermitteln.
Sehr wahrscheinlich müsstest du diesen Code noch auf die neuste PB-Version anpassen. Falls du Probleme beim Anpassen auf die neuste PB-Version hast, dann sag Bescheid.

Ich empfehle dir zusätzlich einen MIB-Browser, den du bei Google herunterladen kannst. Damit kannst du die komplette MIB-Struktur eines Druckers auslesen und du weißt, welche OID du ansprechen musst. Beachte aber, dass die MIB-Struktur herstellerabhängig ist. Jeder Hersteller stellt seinen eigenen MIB-Baum bereit und es kann vorkommen, dass eine bestimmte OID bei einem anderen Druckerhersteller anders lautet, weil die jeweilige Information woanders liegt.

Es sieht zwar am Anfang kompliziert aus, aber nachdem du eine funktionierende Include-Datei geschrieben hast, kannst du auf beliebe OIDs zugreifen und die Informationen auslesen.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: Druckereigenschaften auslesen

Beitrag von ts-soft »

und wenn das alles zu kompliziert ist und der Code von Torakas kaum noch zum Laufen zu bringen ist :mrgreen: ,
dann Versuch es mal mit COMatePLUS: http://www.purecoder.net/COMatePLUS_PB5.zip
Thread hierzu: http://www.purebasic.fr/english/viewtop ... 57#p284157

Dort guckste Dir die WMI demos an. Zum Beispiel "Demo_ListPrinters&PaperTypes.pb"

Mit dem ScriptomaticV2.hta lassen sich noch andere Abfragen generieren.

Das ist zwar alles nicht so einfach, aber dennoch scheint dies die einfachste Möglichkeit zu sein.

Gruß
Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Amor_2001
Beiträge: 75
Registriert: 14.12.2011 19:20

Re: Druckereigenschaften auslesen

Beitrag von Amor_2001 »

Erst mal danke für die vielen Infos.
Muss erst mal alles in Ruhe sichten, aber ein erster Blick zeigt schon... dieser Weg wird kein leichter sein :)

Falls jemand noch einen weiteren Tipp hat, bitte her damit.

Danke!
Amor_2001
Beiträge: 75
Registriert: 14.12.2011 19:20

Re: Druckereigenschaften auslesen

Beitrag von Amor_2001 »

hallo,
habe mir die Beispiele mal angesehen. Auch den ScriptomaticV2.
Habe leider nichts gefunden um Anzahl Papierfächer, Seriennummer, Heft- und Lochfunktion oder Faxmöglichkeit abzufragen. Habe ich da was übersehen, oder geht das darüber nicht?
Antworten