Druckerreinrichtung für alle User
Wie kann ich für alle User aus einfache Art und Weise einen Netzwerkdrucker anlegen.
Hallo
Ich mache diese Admistrationen noch nicht sehr lange.
Habe jedoch eine kleine Frage.
Wie kann man auf einfache Art und Weise für alles User einen Netzwerkdrucker festlegen ohne mich an jedem PC als User anmelden zu müssen?
Denn die User haben keinen festen Arbeitsplatz, d.h. jeder User muß an jedem PC Arbeiten können. Jedoch mußte ich an jedem Windows 2000 PC für jeden User den gleichen Netzwerkdrucker einrichten.
Das war eine ganz schöne Arbeit. Aber das muß doch auch einfacher gehen. Oder?
Hallo
Ich mache diese Admistrationen noch nicht sehr lange.
Habe jedoch eine kleine Frage.
Wie kann man auf einfache Art und Weise für alles User einen Netzwerkdrucker festlegen ohne mich an jedem PC als User anmelden zu müssen?
Denn die User haben keinen festen Arbeitsplatz, d.h. jeder User muß an jedem PC Arbeiten können. Jedoch mußte ich an jedem Windows 2000 PC für jeden User den gleichen Netzwerkdrucker einrichten.
Das war eine ganz schöne Arbeit. Aber das muß doch auch einfacher gehen. Oder?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 8605
Url: https://administrator.de/contentid/8605
Ausgedruckt am: 22.11.2024 um 13:11 Uhr
21 Kommentare
Neuester Kommentar
Hi,
Geh hin und verbinde Dich mit der Domänencontroller-Freigabe NETLOGON bzw. geh in den entsprechenden Pfad auf der Platte. In dem als NETLOGON freigegebenen Ordner erstellst Du ein Textfile namens netlogon.cmd.
In dieses Textfile packst Du folgendes:
@echo off
rundll32 printui.dll,PrintUIEntry /in /n "\\Servername\Druckerfreigabe"
..wobei Du natürlich "\\Servername\Druckerfreigabe" durch die Namen des Servers und des Druckers ersetzen mußt.
Weise jetzt den entsprechenden Usern in der Userverwaltung dieses Startscript wie folgt zu: dsa.msc (AD Benutzer und Computer) starten, dann auf einen der Accounts gehen, die Du konfigurieren willst, dort die Eigenschaften aufrufen und unter Profil \Anmeldescript einfach den Namen des Scripts "netlogon.cmd" ohne irgendwas anderes eintragen (Hinweis: wenn schon ein Logonscript existiert, dann füge einfach die og. Zeile dort ein). Bei der nächsten Anmeldung haben Sie den Drucker angebunden.
rundll32 printui.dll,PrintUIEntry /?
listet Dir übrigens alle möglichen Parameter auf.
Grüße,
fritzo
Wie kann man auf einfache Art und Weise
für alles User einen Netzwerkdrucker
festlegen ohne mich an jedem PC als User
anmelden zu müssen?
für alles User einen Netzwerkdrucker
festlegen ohne mich an jedem PC als User
anmelden zu müssen?
Geh hin und verbinde Dich mit der Domänencontroller-Freigabe NETLOGON bzw. geh in den entsprechenden Pfad auf der Platte. In dem als NETLOGON freigegebenen Ordner erstellst Du ein Textfile namens netlogon.cmd.
In dieses Textfile packst Du folgendes:
@echo off
rundll32 printui.dll,PrintUIEntry /in /n "\\Servername\Druckerfreigabe"
..wobei Du natürlich "\\Servername\Druckerfreigabe" durch die Namen des Servers und des Druckers ersetzen mußt.
Weise jetzt den entsprechenden Usern in der Userverwaltung dieses Startscript wie folgt zu: dsa.msc (AD Benutzer und Computer) starten, dann auf einen der Accounts gehen, die Du konfigurieren willst, dort die Eigenschaften aufrufen und unter Profil \Anmeldescript einfach den Namen des Scripts "netlogon.cmd" ohne irgendwas anderes eintragen (Hinweis: wenn schon ein Logonscript existiert, dann füge einfach die og. Zeile dort ein). Bei der nächsten Anmeldung haben Sie den Drucker angebunden.
rundll32 printui.dll,PrintUIEntry /?
listet Dir übrigens alle möglichen Parameter auf.
Grüße,
fritzo
Hi nochmal,
wenn Du das Setzen des Loginscripts nicht manuell machen willst, dann geht es auch mit folgendem, kleinen VBScript:
Option Explicit
Dim UserObj
Set UserObj = GetObject("WinNT://servername/username")
UserObj.LoginScript = "hurgha.cmd"
UserObj.SetInfo
Set UserObj = Nothing
Wobei das natürlich nur für einen User funktioniert, pack also die User entweder in ein Textfile und lies sie daraus ein oder pack sie im Script selbst in ein Array und trigger es darüber an)
Grüße,
fritzo
wenn Du das Setzen des Loginscripts nicht manuell machen willst, dann geht es auch mit folgendem, kleinen VBScript:
Option Explicit
Dim UserObj
Set UserObj = GetObject("WinNT://servername/username")
UserObj.LoginScript = "hurgha.cmd"
UserObj.SetInfo
Set UserObj = Nothing
Wobei das natürlich nur für einen User funktioniert, pack also die User entweder in ein Textfile und lies sie daraus ein oder pack sie im Script selbst in ein Array und trigger es darüber an)
Grüße,
fritzo
da mußt Du wohl etwas weiter ausholen,
gemini - erklär mal, wie das geht. TIA
Das will ich gerne tun, fritzogemini - erklär mal, wie das geht. TIA
Benutzerkonfiguration > Windows-Einstellungen > Skripts (Anmelden/Abmelden) > Anmelden
~~~~~~~~~~~~~~~~~~~~~~
'Printer.vbs
Option Explicit
On Error Resume Next
Dim WSHNetwork, PrintSRV
PrintSRV = "Printserver"
Set WshNetwork = Wscript.CreateObject("WScript.Network")
WshNetwork.RemovePrinterConnection "Drucker"
WshNetwork.AddWindowsPrinterConnection "\\" & PrintSRV & "\Drucker"
WshNetwork.SetDefaultPrinter "\\" & PrintSRV & "\Drucker"
Set WshNetwork = Nothing
PrintSRV = ""
Das ganze der entspr. OU zugeordnet, ...funktioniert 'wie Sau'
Mir ist natürlich klar, dass man das auch mit der printui oder net use machen kann.
Hi,
ach das meinst Du. Stimmt, das ist noch einfacher. Hab ich noch nie gemacht, aber werde ich mir für die nächste Änderung fest vornehmen.
Ich übersetze das mal für die weniger grobschlächtigen Gemüter: 'gut'
Klar, ob Du es jetzt über Batch oder VBScript machst, bleibt sich gleich - es sei denn, Du hast zB noch NT4-Rechner ohne WSH - da bist Du gezwungen, Batches zu verwenden. Aber wer hat die heute schon noch.. *grins*
Grüße,
fritzo
ach das meinst Du. Stimmt, das ist noch einfacher. Hab ich noch nie gemacht, aber werde ich mir für die nächste Änderung fest vornehmen.
...funktioniert 'wie Sau'
Ich übersetze das mal für die weniger grobschlächtigen Gemüter: 'gut'
auch mit der printui oder net use machen kann.
Klar, ob Du es jetzt über Batch oder VBScript machst, bleibt sich gleich - es sei denn, Du hast zB noch NT4-Rechner ohne WSH - da bist Du gezwungen, Batches zu verwenden. Aber wer hat die heute schon noch.. *grins*
Grüße,
fritzo
Hallo,
ich habe noch eine kleine Frage, bei den Netzlaufwerken prüfe ich ob schon eines besteht, wenn ja lösche ich es und dann verbinde ich es wieder, falls ein User auf Laufwerk h: ein anders Laufwerk hat wie ich will. Daher nun meine Frage, muss ich den Drucker nicht am Anfang überprüfen ob er schon eingerichtet ist, dann löschen und dann wieder mit "rundll32 printui.dll,PrintUIEntry bla bla bla" hinzufügen? Oder ist das egal, was macht das script wenn der Drucker schon existiert?
Gruß Daniel
ich habe noch eine kleine Frage, bei den Netzlaufwerken prüfe ich ob schon eines besteht, wenn ja lösche ich es und dann verbinde ich es wieder, falls ein User auf Laufwerk h: ein anders Laufwerk hat wie ich will. Daher nun meine Frage, muss ich den Drucker nicht am Anfang überprüfen ob er schon eingerichtet ist, dann löschen und dann wieder mit "rundll32 printui.dll,PrintUIEntry bla bla bla" hinzufügen? Oder ist das egal, was macht das script wenn der Drucker schon existiert?
Gruß Daniel
@gemini - bei welchen Systemen bzw. in welchen Fällen ist das so?
Hab mal eben mal testweise bei mir auf dem Server (W2K3) die Standardwerte für das Papier geändert, wenn ich jetzt auf einer Workstation (XP Pro SP2) die Druckereigenschaften aufrufe, ist der Wert aber bereits korrekt abgeändert..
Hab mal eben mal testweise bei mir auf dem Server (W2K3) die Standardwerte für das Papier geändert, wenn ich jetzt auf einer Workstation (XP Pro SP2) die Druckereigenschaften aufrufe, ist der Wert aber bereits korrekt abgeändert..
Hm.. das tritt anscheinend unter w2k3 nicht auf, jedenfalls hier nicht. Die Änderungen werden anscheinend gepusht oder vom Drucker beim Abfragen der Eigenschaften gepullt.
Habe das Trennen und Standarddrucker-Setzen mit printui.dll versucht, aber es funktioniert nicht, ich erhalte eine Fehlermeldung, daß es den Drucker nicht geben würde (ich verwende den selben Namen wie beim Anbinden, das ja funktioniert). Ich werd mal Dein Script probieren, sieht ja recht einfach aus. Möglicher Nachteil - zB "SetDefaultPrinter" funktioniert nur ab XP, right?
Wie es beim neuen 2003 wäre kann ich nicht sagen, weil ich alle Drucker vorher
trenne und dann abhängig von location und UserName neu vebinde und den
Standarddrucker zuweise.
trenne und dann abhängig von location und UserName neu vebinde und den
Standarddrucker zuweise.
Habe das Trennen und Standarddrucker-Setzen mit printui.dll versucht, aber es funktioniert nicht, ich erhalte eine Fehlermeldung, daß es den Drucker nicht geben würde (ich verwende den selben Namen wie beim Anbinden, das ja funktioniert). Ich werd mal Dein Script probieren, sieht ja recht einfach aus. Möglicher Nachteil - zB "SetDefaultPrinter" funktioniert nur ab XP, right?
Hi,
hab hier eben noch eine andere, ziemlich einfache Lösung gefunden - das Dosbox-Programm CON2PRT aus dem Zero-Administration-Kit . Eben getestet und es funktioniert auch unter XP sehr gut. Version bei mir ist 5.00.2128.1
Syntax:
CON2PRT: Lets the user disconnect all existing connections to Windows NT
printers and connect to newly specified Windows NT printers.
Usage: CON2PRT [ /? | /h | /f |
[/c \\printserver\share | /cd \\printserver\share]+]
where:
/? - displays usage.
/h - displays usage.
/f - deletes all existing printer connections.
/c - connects to \\printserver\share printer.
/cd - connects to \\printserver\share printer and sets it as the default
printer.
NOTE: /?, /h can only be the first parameter and if specified further
interpretation of the command line is stopped. /f can also only
be the first parameter, however it doesn't stop further
interpretation of the command line. Any number of /c and /cd
parameters can be specified however only the first /cd sets the
printer specified as the default.
Hint: Use --Net View \\printserver-- to determine available print shares.
Grüße,
fritzo
hab hier eben noch eine andere, ziemlich einfache Lösung gefunden - das Dosbox-Programm CON2PRT aus dem Zero-Administration-Kit . Eben getestet und es funktioniert auch unter XP sehr gut. Version bei mir ist 5.00.2128.1
Syntax:
CON2PRT: Lets the user disconnect all existing connections to Windows NT
printers and connect to newly specified Windows NT printers.
Usage: CON2PRT [ /? | /h | /f |
[/c \\printserver\share | /cd \\printserver\share]+]
where:
/? - displays usage.
/h - displays usage.
/f - deletes all existing printer connections.
/c - connects to \\printserver\share printer.
/cd - connects to \\printserver\share printer and sets it as the default
printer.
NOTE: /?, /h can only be the first parameter and if specified further
interpretation of the command line is stopped. /f can also only
be the first parameter, however it doesn't stop further
interpretation of the command line. Any number of /c and /cd
parameters can be specified however only the first /cd sets the
printer specified as the default.
Hint: Use --Net View \\printserver-- to determine available print shares.
Grüße,
fritzo
Hier noch ein Freeware-Tool für die Kommandozeile, das mir bisher am besten gefällt: AdPrintX. Die Syntax ist kompatibel mit der von con2prt, darüber hinaus lassen sich aber zB Drucker gezielt trennen und anderes mehr. Test unter XP erfolgreich, andere Systeme sind wohl auch kompatibel.
Syntax
ADPRINTX: Manages network printer connections on Windows 9x/NT/2000/XP
v1.00.000 2002-04-24
James Hart (watermarkdesign@bigpond.com)
USAGE: [ /? | /h | /l | /v | /f | [/r "\\server\printer" ] |
[/c "\\server\printer" | /cd "\\server\printer"
/p "Printer Name" | /n "Driver Model"
[ /t "datatype" = "EMF" ] /s "driverpath\filename" ] ]
where:
/? or /h - help
/l - list all installed and connected printers
/v - verbose operation (displays messages)
/c or /cd - unc of network printer (e.g. "\\server\printer")
/p - printer name (e.g. "MyPrinter (MyServer)" *
/n - driver name (e.g. "Canon LBP-8 III") *
/s - driver path (e.g. "c:\windows\system\canonlbp.drv") *
/t - datatype (e.g. "RAW" - default is "EMF") *
/d or /cd - make printer the default (e.g. "\\server\printer")
/r - remove network printer connection (e.g. "\\server\printer")
/f - remove all network printer connection
Grüße,
fritzo
Syntax
ADPRINTX: Manages network printer connections on Windows 9x/NT/2000/XP
v1.00.000 2002-04-24
James Hart (watermarkdesign@bigpond.com)
USAGE: [ /? | /h | /l | /v | /f | [/r "\\server\printer" ] |
[/c "\\server\printer" | /cd "\\server\printer"
/p "Printer Name" | /n "Driver Model"
[ /t "datatype" = "EMF" ] /s "driverpath\filename" ] ]
where:
/? or /h - help
/l - list all installed and connected printers
/v - verbose operation (displays messages)
/c or /cd - unc of network printer (e.g. "\\server\printer")
/p - printer name (e.g. "MyPrinter (MyServer)" *
/n - driver name (e.g. "Canon LBP-8 III") *
/s - driver path (e.g. "c:\windows\system\canonlbp.drv") *
/t - datatype (e.g. "RAW" - default is "EMF") *
/d or /cd - make printer the default (e.g. "\\server\printer")
/r - remove network printer connection (e.g. "\\server\printer")
/f - remove all network printer connection
- used by Win9x only
Grüße,
fritzo
Hier noch eine kleine Auflistung von Drucker-Tools und -Scripts::
PRINT - Textfile drucken
NET VIEW - Liste von Shares und Netzdruckern auflisten
NET PRINT - Printjobs ansehen und löschen
PRNCNFG - Drucker anzeigen, konfigurieren und umbenennen
PRNDRVR - Druckertreiber hinzufügen, löschen oder anzeigen
PRNJOBS - Printjobs auflisten, löschen, stoppen oder fortsetzen
PRNMNGR - Listen, Hinzufügen und Löschen von Printern, Standarddrucker setzen
PRNPORT - Erstellen, Bearbeiten und Löschen von TCP/IP-Printerports
PRNQCTL - Testseiten drucken, Stoppen und Fortsetzen von Druckern, Queues löschen
RUNDLL32 - Installieren und Löschen von Druckern
WMIC PRINTER - Druckeroptionen per WMI über die Dosbox setzen
Quelle: http://www.ss64.com
KB-Artikel
Q189105 - Add Printers with No User Interaction (Win 2000)
Q314486 - Add Printers with No User Interaction (Win XP)
@gemini - sollen wir nicht zusammen ein Tutorial über dieses Thema schreiben?
PRINT - Textfile drucken
NET VIEW - Liste von Shares und Netzdruckern auflisten
NET PRINT - Printjobs ansehen und löschen
PRNCNFG - Drucker anzeigen, konfigurieren und umbenennen
PRNDRVR - Druckertreiber hinzufügen, löschen oder anzeigen
PRNJOBS - Printjobs auflisten, löschen, stoppen oder fortsetzen
PRNMNGR - Listen, Hinzufügen und Löschen von Printern, Standarddrucker setzen
PRNPORT - Erstellen, Bearbeiten und Löschen von TCP/IP-Printerports
PRNQCTL - Testseiten drucken, Stoppen und Fortsetzen von Druckern, Queues löschen
RUNDLL32 - Installieren und Löschen von Druckern
WMIC PRINTER - Druckeroptionen per WMI über die Dosbox setzen
Quelle: http://www.ss64.com
KB-Artikel
Q189105 - Add Printers with No User Interaction (Win 2000)
Q314486 - Add Printers with No User Interaction (Win XP)
@gemini - sollen wir nicht zusammen ein Tutorial über dieses Thema schreiben?
Con2Prt.exe /f löscht auch
Druckerverbindungen
Druckerverbindungen
@gemini - fast zeitgleich ;) Hättest Du Lust, gemeinsam ein Tutorial zu erstellen? Material hätten wir ja anscheinend genug.
::Aktualisierte Auflistung von Drucker-Tools und -Scripts, Stand 25.04.2005::
Clean.vbs - Alle Druckerobjekte löschen (Forms, Treiber, Drucker und Ports)
Clone.vbs - Windows 2000 Printserver klonen
Conall.vbs - Druckerverbindungen zu allen Druckern auf dem angegebenen Server herstellen
Defprn.vbs - Den Standarddrucker des angemeldeten Users setzen oder ausgeben
Drvmgr.vbs - Einen Treiber hinzufügen
Forms.vbs - Forms erstellen und hinzufügen oder auflisten
Persist.vbs - Druckereinstellungen in ein File sichern oder von einem File wiederherstellen
Portconv.vbs - TCP-Port hinzufügen
- TCP-Ports auf einem Zielserver für alle LPR-Monitore auf einem anderen anlegen
Portmgr.vbs - Ports hinzufügen, löschen, auflisten / die Portkonfiguration listen oder setzen
PRINT - Textfile drucken
NET VIEW - Liste von Shares und Netzdruckern auflisten
NET PRINT - Printjobs ansehen und löschen
Prnadmin.dll -
Prncfg.vbs -
prndata.vbs - Lesen oder schreiben vom oder in den Regkey des angegebenen Druckers
PRNCNFG - Drucker anzeigen, konfigurieren und umbenennen
Prnctrl.vbs - Drucker steuern
PRNDRVR - Druckertreiber hinzufügen, löschen oder anzeigen
PRNJOBS - Printjobs auflisten, löschen, stoppen oder fortsetzen
Prnmgr.vbs -
PRNMNGR - Listen, Hinzufügen und Löschen von Printern, Standarddrucker setzen
PRNPORT - Erstellen, Bearbeiten und Löschen von TCP/IP-Printerports
PRNQCTL - Testseiten drucken, Stoppen und Fortsetzen von Druckern, Queues löschen
RUNDLL32 - Installieren und Löschen von Druckern
WMIC PRINTER - Druckeroptionen per WMI über die Dosbox setzen
</blockquote>
KB-Artikel
Q189105 - Add Printers with No User Interaction (Win 2000)
Q314486 - Add Printers with No User Interaction (Win XP)
Grüße,
fritzo
Clean.vbs - Alle Druckerobjekte löschen (Forms, Treiber, Drucker und Ports)
Clone.vbs - Windows 2000 Printserver klonen
Conall.vbs - Druckerverbindungen zu allen Druckern auf dem angegebenen Server herstellen
Defprn.vbs - Den Standarddrucker des angemeldeten Users setzen oder ausgeben
Drvmgr.vbs - Einen Treiber hinzufügen
Forms.vbs - Forms erstellen und hinzufügen oder auflisten
Persist.vbs - Druckereinstellungen in ein File sichern oder von einem File wiederherstellen
Portconv.vbs - TCP-Port hinzufügen
- TCP-Ports auf einem Zielserver für alle LPR-Monitore auf einem anderen anlegen
Portmgr.vbs - Ports hinzufügen, löschen, auflisten / die Portkonfiguration listen oder setzen
PRINT - Textfile drucken
NET VIEW - Liste von Shares und Netzdruckern auflisten
NET PRINT - Printjobs ansehen und löschen
Prnadmin.dll -
Prncfg.vbs -
prndata.vbs - Lesen oder schreiben vom oder in den Regkey des angegebenen Druckers
PRNCNFG - Drucker anzeigen, konfigurieren und umbenennen
Prnctrl.vbs - Drucker steuern
PRNDRVR - Druckertreiber hinzufügen, löschen oder anzeigen
PRNJOBS - Printjobs auflisten, löschen, stoppen oder fortsetzen
Prnmgr.vbs -
PRNMNGR - Listen, Hinzufügen und Löschen von Printern, Standarddrucker setzen
PRNPORT - Erstellen, Bearbeiten und Löschen von TCP/IP-Printerports
PRNQCTL - Testseiten drucken, Stoppen und Fortsetzen von Druckern, Queues löschen
RUNDLL32 - Installieren und Löschen von Druckern
WMIC PRINTER - Druckeroptionen per WMI über die Dosbox setzen
</blockquote>
KB-Artikel
Q189105 - Add Printers with No User Interaction (Win 2000)
Q314486 - Add Printers with No User Interaction (Win XP)
Grüße,
fritzo
Hi,
mal eine wahrscheinlich merkwürdig anmutende Frage - habt Ihr schon einmal versucht, die Rechte auf einer Printqueue per Script zu setzen oder zu ändern? Hat es geklappt? Mit Boardmitteln? Oder Scripts? Falls ja, dann sagt mir bitte unbedingt Bescheid , welches Tool verwendet wurde, vielen Dank im voraus.
Ich selbst habe mir ein bißchen die Augen blutig gesucht. Lustigerweise gibt es einige ältere Tools, bei denen das wohl unter NT4 noch funktioniert hat (SubInAcl und RMTShare zum Beispiel), aber unter Windows 2000 oder 2003 habe ich nichts gefunden, mit dem sich Printer Permissions setzen liessen. Eigentlich sollte man meinen, daß es genau wie bei einem Share funktioniert, tut es aber nicht.
Und dann habe ich das hier gefunden und bin sehr davon begeistert:
http://setacl.sourceforge.net
Es ist das einzige Tool, das ich kenne, mit dem sich Berechtigungen auf Druckern setzen lassen. Darüber hinaus kann es Rechte auf so ziemlich jedem Objekt in einer Domäne setzen.
Grüße,
fritzo
mal eine wahrscheinlich merkwürdig anmutende Frage - habt Ihr schon einmal versucht, die Rechte auf einer Printqueue per Script zu setzen oder zu ändern? Hat es geklappt? Mit Boardmitteln? Oder Scripts? Falls ja, dann sagt mir bitte unbedingt Bescheid , welches Tool verwendet wurde, vielen Dank im voraus.
Ich selbst habe mir ein bißchen die Augen blutig gesucht. Lustigerweise gibt es einige ältere Tools, bei denen das wohl unter NT4 noch funktioniert hat (SubInAcl und RMTShare zum Beispiel), aber unter Windows 2000 oder 2003 habe ich nichts gefunden, mit dem sich Printer Permissions setzen liessen. Eigentlich sollte man meinen, daß es genau wie bei einem Share funktioniert, tut es aber nicht.
Und dann habe ich das hier gefunden und bin sehr davon begeistert:
http://setacl.sourceforge.net
Es ist das einzige Tool, das ich kenne, mit dem sich Berechtigungen auf Druckern setzen lassen. Darüber hinaus kann es Rechte auf so ziemlich jedem Objekt in einer Domäne setzen.
Grüße,
fritzo