Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Druckerpfad ändern

Mitglied: Klingenberg

Klingenberg (Level 1) - Jetzt verbinden

04.05.2010 um 12:25 Uhr, 7351 Aufrufe, 11 Kommentare

Moin moin,
ich bin ein Jungspund des Forums un hoffe, dass ihr mir hier ein wenig auf die Sprünge helfen könnt.

Mein Problem ist das Folgende:

Wir haben unseren Printserver migriert und umbenannt. Nun müssen rund 300 Anwender ihren DruckerPfad ändern. Es hat sich lediglich der Name des Servers geändert, nicht jedoch der der Drucker.

Daher ist der Status quo der Folgende:
Alt: \\server1\druckername
Neu:\\server1\druckername

Wie kann ich ein Script erstellen, das lediglich den Pfad des Druckers ändert, ohne den Drucker zu deinstallieren?
Gerne kann dies auch über die Logon.bat passieren.

Mein Gedanke ist,
nach \\server1\* zu suchen und das Ergebnis in \\server2\* umzubenennen.

Wie kann ich das realisieren?

Mit Freundlichem Gruß,

A. Klingenberg
Mitglied: Aufmuckn
04.05.2010 um 13:19 Uhr
lass den drucker doch per script neu verbinden und den alten löschen vorher ... relativ einfache sache ..

schau dir mal:

rundll32 printui.dll,PrintUIEntry


genauer an .... da kannst die wichtigsten sachen machen wie:

drucker löschen , drucker installieren, standarddrucker setzen , .. etc ..

mfg
mike
Bitte warten ..
Mitglied: Klingenberg
04.05.2010 um 13:29 Uhr
Das klingt ja schön und gut,....
Ich weiß jedoch nicht, in welcher Abteilung welcher Drucker genutzt wird.

Daher sollen alle Drucker, die vorher auf einem System eingerichtet waren nun anstelle von \\server1\ den \\server2\ Pfad nehmen.


Wie finde ich heraus, welche Drucker auf dem System vorher alles über \\server1\ Ihre Druckaufträge erhalten haben?

mfg

A. Klingenberg
Bitte warten ..
Mitglied: Aufmuckn
04.05.2010 um 13:44 Uhr
um wieviele versch. drucker gehts denn auf server1 ?
Bitte warten ..
Mitglied: Klingenberg
04.05.2010 um 13:52 Uhr
ca. 60 -70 versch. Drucker ;)
Bitte warten ..
Mitglied: Aufmuckn
04.05.2010 um 13:58 Uhr
hui .. ok .. das macht die sache schon aufwändiger ..
Bitte warten ..
Mitglied: Klingenberg
04.05.2010 um 14:00 Uhr
Nicht jeder Anwender greift auf alle Drucker zu. Es sind meistens Drucker, die direkt in den jeweiligen Büroräumen stehen, jedoch über den Printserver angesprochen werden.
Bitte warten ..
Mitglied: Aufmuckn
04.05.2010 um 14:20 Uhr
naaaaja .. also ..

dafür bin ich leider zu wenig scripter .. aber es soltle schon möglich sein die druckerinformationen auszulesen - zu vergleichen und falls "server1" vorkommt dies durch "server2" zu ersetzten ..

zumindest kann man die druckerinformationen als datei abspeichern .. und somit auslesen ...

http://www.diew.eu/2009/07/01/mit-rundll32-printuidllprintuientry-zur-d ...

aber wie gesagt .. das übersteigt leider meine scriptfähigkeiten - aber ev. findet sich hier noch der ein oder andere .. ?

mfg
Bitte warten ..
Mitglied: Aufmuckn
04.05.2010 um 14:22 Uhr
Zitat von Klingenberg:

Daher ist der Status quo der Folgende:
Alt: \\server1\druckername
Neu:\\server1\druckername


sollt wohl heissen:

neu: \\server2\druckername
Bitte warten ..
Mitglied: 89485
04.05.2010 um 14:44 Uhr
nur mal ne frage:

wenn die über einen Printserver laufen, haben die doch eine feste IP-Adresse....

bekommen die dann überhaupt eine neue????

wenn ja, überleg' dir mal, ob es nicht sinnvoller ist, die Einstellungen von ALT auf NEU zu übernehmen

Grüße Batchliebhaber
Bitte warten ..
Mitglied: Klingenberg
04.05.2010 um 14:56 Uhr
Ich habe jetzt eine Lösung gefunden. Der Code stammt aus einem anderen Forum, führt jedoch zum Ziel

01.
Option Explicit 
02.
 
03.
Dim Text, i, PS1, nPS1 
04.
Dim drucker, server, tempname, fso, fi2, message, intro, def_printer, old_def_printer, error_meldung, reg_eintrag 
05.
Dim WshNetwork, WshShell, oDevices ' Objektvariable 
06.
Const ForWriting = 8 ' 2 = Write und 8 = anhängen 
07.
 
08.
Set WshShell = WScript.CreateObject("WScript.Shell") 
09.
' Erstelle neues WshNetwork-Objekt, welches man zum Zugriff 
10.
' auf die Netzwerk-Eigenschaften brauchen. 
11.
Set WshNetwork = WScript.CreateObject("WScript.Network") 
12.
 
13.
On error resume next 
14.
 
15.
if WshShell.RegRead("HKCU\Software\Shortcut\chgPrinter\chgPrinterVersion") <> "100" Then 
16.
Select Case err.number 
17.
Case 0 
18.
error_meldung = " Registryeintrag vorhanden " & vbCRLF 
19.
Case -2147024894 
20.
error_meldung = " Registryeintrag fehlt " & vbCRLF 
21.
Case Else 
22.
error_meldung = " Unbekannter Fehler: Code " & Err.Number & " Bezeichnung : " & Err.Description & vbCRLF 
23.
End Select 
24.
 
25.
' Alte Druckserver 
26.
PS1 = "AlterServer" 
27.
' Neue Druckserver 
28.
nPS1 = "NeuerServer" 
29.
 
30.
def_printer = WshShell.RegRead("HKCU\Software\Microsoft\Windows NT\CurrentVersion\Windows\Device") 
31.
old_def_printer = Split(def_printer, ",", -1, 1) 
32.
'msgBox "Alter Default Printer = : " & old_def_printer(0) 
33.
def_printer = Replace(ucase(old_def_printer(0)), "PRINT", "PS", 1, 1, 1) 
34.
'msgBox "Neuer Default Printer = : " & def_printer 
35.
 
36.
' Schreiben der Logdatei "Printer.txt" in "D:\" 
37.
Set fso = CreateObject("Scripting.FileSystemObject") 
38.
Set fi2 = fso.OpenTextFile("D:\PRINTER.TXT", ForWriting, true) ' Ausgabedatei 
39.
 
40.
' Jetzt die Zuordnungen auflisten 
41.
Set oDevices = WshNetwork.EnumPrinterConnections 
42.
 
43.
' Überschrift der Ausgabe 
44.
 
45.
Text = vbCRLF &" Zusammenfassung der Druckerzuordnungen" & vbCRLF 
46.
Text = text &"-----------------------------------------------------------------------" & vbCRLF & vbCRLF 
47.
 
48.
 
49.
' Untertitel der Ausgabe 
50.
Text = text & " Die alten Druckerzuordnungen lauteten:" & vbCRLF & vbCRLF 
51.
text = text & "Old Default Printer = " & old_def_printer(0) & vbCRLF 
52.
 
53.
' Ermitteln der alten (aktuell) definierten Druckerobjekte 
54.
For i = 0 To oDevices.Count-1 Step 2 
55.
' Ausgabe bei jedem Durchlauf ergänzen 
56.
Text = " " & Text & oDevices(i) & " " & oDevices(i+1) & vbCRLF 
57.
' Variable splitten wo ein \ vorkommt 
58.
tempname = Split(oDevices(i+1), "\", 2, 1) 
59.
for each server in tempname 
60.
' Variable abermals splitten wo ein \ vorkommt, damit Server und Drucker übrig bleibt 
61.
drucker = Split(server, "\", -1, 1) 
62.
' Prüfen welcher Printserver gefunden wurde 
63.
if Instr(1, ucase(server), PS1, 1) Then 
64.
' Druckerzuordnung zu neuem Server herstellen 
65.
WshNetwork.AddWindowsPrinterConnection "\\"&nPS1&"\"&drucker(2) 
66.
' Druckerzuordnung löschen 
67.
WshNetwork.RemovePrinterConnection "\\"&PS1&"\"&drucker(2) 
68.
end if 
69.
Select Case err.number 
70.
Case 0 
71.
message = " Info: Druckervorgang " & "\\"&server&"\"&drucker(2) & " erfolgreich durchgeführt." & vbCRLF 
72.
End Select 
73.
next 
74.
Next 
75.
 
76.
' Abermals die neuen Druckereinstellungen auslesen 
77.
Set oDevices = WshNetwork.EnumPrinterConnections 
78.
' Ausgabetext definieren 
79.
Text = " " & Text & vbCRLF &vbCRLF & " Die neuen Druckerzuordnungen lauten jetzt:" & vbCRLF &vbCRLF 
80.
 
81.
' Ermitteln der alten (aktuell) definierten Druckerobjekte 
82.
For i = 0 To oDevices.Count-1 Step 2 
83.
Text = " " & Text & oDevices(i) & " " & oDevices(i+1) & vbCRLF 
84.
Next 
85.
 
86.
' Default Printer setzen 
87.
WshNetwork.SetDefaultPrinter def_printer 
88.
 
89.
text = text & "New Default Printer = " & def_printer & vbCRLF 
90.
 
91.
MsgBox Text, vbOkonly + vbInformation 
92.
 
93.
fi2.WriteLine Text & "----------------------------------------------------" & vbCRLF & error_meldung 
94.
fi2.WriteLine " " & vbCRLF & vbCRLF & "--------------------------- E N D E --------------------------------" & vbCRLF 
95.
 
96.
'In Registry schreiben, um bei jedem Start zu prüfen ob schon gelaufen 
97.
WshShell.RegWrite "HKCU\Software\shortcut\chgPrinter\chgPrinterVersion", "0" 
98.
 
99.
Set fi2 = Nothing 
100.
else 
101.
' msgBox "Fehlermeldung = : " & err.Number 
102.
' MsgBox "Ist schon gelaufen" 
103.
WScript.Quit 
104.
end if 
105.
WScript.Quit 
106.
 
107.
 
Wer das Problem sonst noch hat kann damit evtl. etwas anfangen.
Danke Mike, das du dich um eine Lösung bemüht hast.
Bitte warten ..
Mitglied: Aufmuckn
04.05.2010 um 15:13 Uhr
büdde gern .. und funktioniert das script bei dir ? oder hast noch nicht getestet?
Bitte warten ..
Ähnliche Inhalte
Netzwerkmanagement
Netzlaufwerkpfade ändern
gelöst Frage von tribas222Netzwerkmanagement9 Kommentare

Hallo, bin hoffentlich im richtigen Unterforum ;) Ist-Stand: Mein selbsterstelltes Homelaufwerk wird folgendermaßen dargestellt: mein_name (\\domäne\pfadblah) Soll: Home (:H) ...

Windows Server
Kennwortkomplexität ändern
gelöst Frage von LinuZzzWindows Server12 Kommentare

Hallo zusammen, gibt es eine Möglichkeit, an einem Windows 2012 Server, die Kennwortkomplexität zu verändern? Die Standardeinstellung besagt dass ...

Batch & Shell

Dateiname ändern, und auch in Datei ändern. evt mit einem Batch

gelöst Frage von helmuthelmut2000Batch & Shell18 Kommentare

Hallo, Ich möchte folgendes umsetzten: Ich habe ein paar Ordner mit Dateien Die Dateien haben folgende Dateinamen, ABC123456.doc ABC123457.doc ...

Windows Userverwaltung

Benutzer Passwort ändern und Exchange Passwort ändern

Frage von Abraham85Windows Userverwaltung2 Kommentare

Servus, ich habe mal eine blöde Frage, da ich zurzeit vor einem Problem stehe: Wir haben folgende Server im ...

Neue Wissensbeiträge
Windows 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 15 StundenWindows 103 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 18 StundenAdministrator.de Feedback14 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 1 TagHumor (lol)4 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 2 TagenGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Heiß diskutierte Inhalte
Server-Hardware
Welche Rolle spielt Design bei Enterprise IT Hardware?
Frage von ApolloXServer-Hardware17 Kommentare

Ich arbeite für einen internationalen Elektronikhersteller in der Forschung und meine Aufgabe ist es, Feedback von Nutzern in Hinsicht ...

Windows Netzwerk
WSUS4 und Windows 10 Updates automatisch installieren
Frage von sammy65Windows Netzwerk15 Kommentare

Hallo miteinander, ich habe mit einen neuen WSUS Server aufgesetzt Server 2016 darauf einen aktuellen WSUS. Grund, wir stellen ...

Speicherkarten
Vergessliche USB-Sticks?
Frage von hanheikSpeicherkarten14 Kommentare

Ich habe in den letzten Tagen 500 USB-Sticks mit Bilddateien bespielt. Obwohl ich die Dateien mit größter Sorgfalt kopiert ...

Hyper-V
Hyper-V mit altem XEON-Server. Was ist falsch?
Frage von LollipopHyper-V11 Kommentare

Hallo Bin etwas frustriert. Kleinbetrieb, ca. 15 PC's, 2 Stk. Server mit einigen virtuellen PC's für Fernwartung, VaultServer für ...