Netzwerkdrucker finden unter Java (J2SE)

shocking

Mitglied
Hi,

ich habe folgendes Problem: ich möchte in meiner Anwendung die unter Windows installierten Drucker in einer JComboBox anzeigen lassen.
Über PrintServiceLookup.lookupPrintServices(null, null) versuche ich die Drucker auszulesen. Leider fehlen dabei einige Netzwerkdrucker, sie werden schlicht nicht gefunden. Die lokal installierten sind alle da.

Gibt es unter Java noch einen anderen Weg, die installierten Drucker auszulesen?

Danke und Gruß
shocking
 
Hi!
Das ist imho die richtige Vorgehensweise. Unter der Vorraussetzung dass du die Netzwerkdrucker auch auf deinem PC als Netzwerkdrucker registriert hast, sollten sie eigentlich gefunden werden...

*grüssle*
 
Hi,

ja das ist das Problem. Die Drucker sind installiert und in anderen Anwendungen wie z.B. Word und auch im System unter "Drucker und Faxgeräte" zu finden. Nur Java scheint sie nicht zu erkennen...

Gruß
shocking
 
Leider nicht. Gerade etwas getestet:

- Mit/ohne Netzwerkverbindung
- Netzwerkdrucker entfernt/hinzugefügt

Jedes mal erhielt ich vom PrintServiceLookup eine korrekte Liste. Ist an den nicht gefundenen Netzwerkdruckern irgendetwas Besonderes?
 
Wenn ich ehrlich bin, hab ich keine Ahnung... Für die Einrichtung der Drucker sind die Admins zuständig. Das Problem tritt auch nur bei Windows 7 Rechnern auf, wie sich nun herausgestellt hat. Scheinbar ist es ein Unterschied je nachdem wie der Drucker installiert wurde. Offensichtlich laufen die Drucker über Druckerserver und nicht jeder davon wird gefunden.
Was mich halt nur wundert ist, dass die Drucker in Windows normal erkannt werden etc. Nur das Java PrintServiceLookup scheint sie nicht zu finden...
Ich konnte leider noch nicht wirklich ausmachen, wie/wo genau dieser das Auslesen technisch realisiert.

Gruß shocking
 
Für den Fall dass es jemanden interessiert:

Das Problem lag nicht im Auffinden der Drucker sondern vielmehr in einem Filter, der einige Drucker wieder entfernt hat. Problem ist somit gelöst ;-)
 
Zurück