Archiv für April 2009

Seltsame Druckerprobleme

Freitag, 3. April 2009

Seit ein paar Tagen tauchen immer wieder merkwürdige Druckerprobleme auf. Meist funktionieren lokal angeschlossene Drucker nicht mehr. Testseite drucken ist nicht möglich, obwohl z.B. die Wartungsfunktionen, die mitunter auch Muster oder ähnliches zur Kalibrierung drucken, funktionieren. Außerdem versagen einige Netzwerkdrucker auf betroffenen Rechnern den Dienst.

Geholfen hat das Verwenden eines neuen Postscript-Treibers auf dem Druckserver (obwohl vermutlich nicht ursächlich) und das „Aktualisieren“ der Treiber von lokalen und Netzdruckern auf den Clients. Um Treiber endgültig aus dem System zu entfernen (in XP/2000), rechts klick auf leere Stelle im Drucker-UI -> Servereigenschaften, dort stehen Anschlüsse und Treiber, die installiert sind. In dem Fall hat es gereicht mit „Aktualisieren“ die Treiber neu einzubinden – was auch immer Windows dann macht.. danach liefen die Drucker jedenfalls wieder.

Edit: Eine endgültige Lösung brachte nur das Neueinrichten aller Drucker und insbesondere das Installieren nicht über Point and Print, sondern als „lokaler“ Drucker. Wähle dazu Neuer Drucker -> Neuer Local Port-Anschluss -> Eingabe des UNC-Pfades \printserverdrucker und manueller Installation des Druckertreibers. Sehr unschön, aber immerhin drucken die Drucker wieder..

Drucker für alle Benutzer anlegen

Mittwoch, 1. April 2009

Wenn man einen Netzwerkdrucker mit einem Benutzer installiert ist dieser nicht für andere Benutzer eingerichtet. Dazu gibt es die Option /ga des printui.dll. ga steht für global add. Man löscht mit /gd für global delete. Die Installation kann auch zum Beispiel von einem Domänencontroller mit Admin-Rechten auf dem Zielcomputer per remote erfolgen. Dazu folgendes Batch-File „globalprinteradd.bat“:

echo Aufruf: globalprinteradd TargetHostname \PrintserverhostSharename
rundll32 printui.dll,PrintUIEntry /ga /c\%1 /n%2
start /wait sc \%1 stop spooler
start /wait sc \%1 start spooler

Es wird mit globalprinteradd TargetHostname \PrintserverhostSharename aufgerufen und installiert somit auf diesem Host den Drucker für alle Nutzer.

Es gibt noch mehr Dinge, die man mit printui.dll machen kann, eine Liste zum Beispiel hier: http://www.lrz-muenchen.de/~fakler/windowsnt/faq/printui_syntax.html