Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Nur Drucker löschen die in einer Domain sind Script

Frage Entwicklung

Mitglied: redzack

redzack (Level 1) - Jetzt verbinden

30.07.2010, aktualisiert 18.10.2012, 3629 Aufrufe, 6 Kommentare

Hallo Scripter,

mir worde hier ja schon sehr oft geholfen nun habe ich wiedermal ein Problem, hoffe mal das ihr mich nun auch nicht im Stich lässt

ich lösche wia Script alle Netzwerkdrucker

01.
Set objNetwork = WScript.CreateObject("WScript.Network") 
02.
Set objPrinters = objNetwork.EnumPrinterConnections 
03.
				For intLoop = 0 To objPrinters.Count - 1 
04.
				objNetwork.RemovePrinterConnection objPrinters.Item(intLoop),-1,-1
die Drucker sind alle auf ein Domainserver verbunden.

\\Server1.test.lokal\FreigabeDrucker

Nun möchte ich aber nur die Drucker löschen die auch tatsächlich in der Domain test.lokal Verbunden wurden löschen

Beispiel:

ein Client hat noch andere Drucker verbunden

\\Server1.test.lokal\FreigabeDrucker > diesen soll er löschen
\\CLient\Druckername > diesen nicht
\\192.168.1.1\Druckername > diesen auch nicht


ich hoffe ihr könnt mir weiterhelfen.

vielen Dank
Mitglied: noodyn
30.07.2010 um 09:43 Uhr
Überschrift enthält Fehler: Bitte entweder Domäne oder Domain, aber sicher nicht Domaine
Bitte warten ..
Mitglied: bastla
30.07.2010, aktualisiert 18.10.2012
Hallo redzack!

Sieh Dir mal LotPings hier gepostetes Script an - sollte sich entsprechend anpassen lassen ...

Grüße
bastla
Bitte warten ..
Mitglied: redzack
30.07.2010 um 10:35 Uhr
Hab ich bereits getestet

01.
Set objNetwork = WScript.CreateObject("WScript.Network") 
02.
				Set objPrinters = objNetwork.EnumPrinterConnections 
03.
				For intLoop = 0 to objPrinters.Count - 1 
04.
				If Left(objPrinters.Item(intLoop),9) = "\\Server1"  Then 
05.
						objNetwork.RemovePrinterConnection objPrinters.Item(intLoop),-1,-1
doch er löscht mir die Drucker nicht raus
Bitte warten ..
Mitglied: Biber
30.07.2010 um 11:01 Uhr
Moin redzack,

du hast doch aber sicherlich diese Schleife schon einmal mit einem "Wscript.echo objPrinters.Item(intLoop)" laufen lassen, hmm?

Ich verwette das Lieblingsfusskettchen meiner Lieblingspraktikantin, dass eventuell ein
     If LCase(Left(objPrinters.Item(intLoop),9)) = "\\server1" 
..das Problem stark relativiert.
Ansonsten poste doch die o.b. Ausgabe.

Grüße
Biber

P.S. Dass noch irgendwo ein "Next" und ein "Set objXXX = Nothing" folgt in dem Copy&Paste-Schnipsel nehme ich mal einfach als selbstverständlich an.
P.P.S: @bastla wg "Set objXXX=Nothing" --> Aber wenn die es sich nicht bei 5zeiligen Schnipsel angewöhnen, wie denn dann bei 5000 Zeilen?
Bitte warten ..
Mitglied: bastla
30.07.2010 um 13:28 Uhr
Hallo redzack!

Da ja nun VBS bei einfachen String-Vergleichen recht genau ist, vielleicht eher:
If LCase(Left(objPrinters.Item(intLoop),9)) = "\\server1"  Then
Grüße
bastla

P.S.:
@Biber
"Set objXXX = Nothing" sollte automatisch beim Scriptende erfolgen ...
Bitte warten ..
Mitglied: redzack
30.07.2010 um 22:00 Uhr
Ja die Groß und Kleinschreibung wars ;) hehe

danke
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Batch & Shell
Mehrere lokale Drucker löschen (4)

Frage von Tealk144 zum Thema Batch & Shell ...

Batch & Shell
gelöst Poweshell Script soll String ersetzen und die leere Zeile löschen (4)

Frage von Mars123 zum Thema Batch & Shell ...

Microsoft
Windows 10 logon script: alle Apps löschen (3)

Frage von thomasreischer zum Thema Microsoft ...

Heiß diskutierte Inhalte
Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

Microsoft Office
Keine Updates für Office 2016 (12)

Frage von Motte990 zum Thema Microsoft Office ...

Grafikkarten & Monitore
Tonprobleme bei Fernseher mit angeschlossenem Laptop über HDMI (11)

Frage von Y3shix zum Thema Grafikkarten & Monitore ...