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 VBS-Logoutscript IP-bezogen aber wie?

Mitglied: DocuSnap-Dude

DocuSnap-Dude (Level 2) - Jetzt verbinden

03.04.2010 um 18:14 Uhr, 3772 Aufrufe, 9 Kommentare

Hallo,

ich möchte gern das innerhalb eines bestimmten IP-Netzes (beginnend mit 172.16.beim Logout des Users verbundene UNC-Printer eines bestimmten Servers ( \\211PRT01\ ) gelöscht werden (also cleane alles was mit \\211PRT02\ beginnt wenn du im netz 172.16. bist). Leider bin ich voll am Anfang mit VBS (bisher hab ich alles über Jahre mit BAT gemacht). Das ganze soll schnell gehen (damit der logout nicht ewig leiert). Wer kann mir helfen (aber bitte: es geht nur VBS aus betrieblichen Gründen; keine Ideen a la "bleib doch bei BAT-Files")....

Hier mein Ansatz (der aber nicht funktioniert); wie gesagt nur ein Ansatz:

01.
Dim WshNetwork, WshShell
02.
Dim oDrives, fUser, fOS, fDomain, fUserName, oGroupDict
03.
Dim objNetwork
04.
Dim objFSO, objFileCopy
05.
Dim strFilePath, strDestination
06.

07.
Set objFSO = CreateObject("Scripting.FileSystemObject")
08.
Set objNetwork = CreateObject("WScript.Network")
09.
Set WshNetwork = WScript.CreateObject("WScript.Network")
10.
Set WshShell = WScript.CreateObject("WScript.Shell")
11.
Set oDrives = WshNetwork.EnumNetworkDrives
12.

13.
UserName = (WshShell.ExpandEnvironmentStrings("%UserName%"))
14.
fUser = (WshNetwork.UserName)
15.
Set WshShell = CreateObject("WScript.Shell")
16.

17.
'Check if you are connected in LAN 172.16.****************************************
18.
strComputer = "."
19.
Set objWMIService = GetObject("winmgmts:" & "!\\" & strComputer & "\root\cimv2" )
20.
Set colAdapters = objWMIService.ExecQuery("Select * from Win32_NetworkAdapterConfiguration Where IPEnabled = True" )
21.
For Each objAdapter in colAdapters
22.
    IPdebut = LBound(objAdapter.IPAddress)
23.
    IPfin = UBound(objAdapter.IPAddress)
24.
    If (objAdapter.IPAddress(IPdebut) => "172.16" ) then 
25.

26.
'Anmerkung: hier weiss ich nicht weiter; wenn IP ungleich 172.16 beginnt soll er abbrechen; ansonsten zur näcjhsten Sprungmarke (war das nur einfach unter BAT)
27.

28.

29.
	'## Sequence remove Network Printers"
30.
		Dim UncPrinters
31.
		UncPrinters	= Array("Drucker1","Drucker2","Drucker3",Drucker4")
32.
'Anmerkung: ich möchte eigentlich nicht jeden Drucker einzeln auffüren müssen sondern eben alles was \\211PRT02\ beginnt --> Wie setze ich Wildcards?
33.

34.
		Set objNetwork = WScript.CreateObject("WScript.Network")
35.
			For i = 0 To Ubound(UncPrinters) 
36.
			on error resume next
37.
			 objNetwork.RemovePrinterConnection("\\211PRT02\" & UncPrinters(i))
38.
			Next
39.
			
40.
	'##Sequence remove Network Drives##
41.
		Dim DelNetDrive
42.
			Set WshNet = CreateObject("WScript.Network")
43.
				For DriveAsc = 102 To 122
44.
				On Error Resume Next
45.
				DelNetDrive = Chr(DriveAsc) & ":"
46.
				WshNet.RemoveNetworkDrive DelNetDrive, True, True
47.
			Next
Thank's a lot!

Frank
Mitglied: AndreasBrecht
03.04.2010 um 19:16 Uhr
Moin,

zu 1. wscript.quit bricht die Ausführung des sripts ab

zu 2. Falls es Dir gelingen sollte die verbundenen Drucker aufzulisten (da gibt es wohl eine wmi query aber das müsste ich jetzt auch googeln), kannst Du mit Instr() oder Left() prüfen, ob der Name die gesuchte Zeichenkette enthält / mit ihr anfängt
Bitte warten ..
Mitglied: bastla
03.04.2010 um 19:56 Uhr
@AndreasBrecht
Falls es Dir gelingen sollte die verbundenen Drucker aufzulisten
Würde Dir als Stichwort "EnumPrinterConnections" helfen?

Grüße
bastla
Bitte warten ..
Mitglied: DocuSnap-Dude
03.04.2010 um 20:02 Uhr
Hm; ehrlich gesagt steh ich bei der Frage auf dem Schlauch. Hab das hier gefunden:

01.
         var WshNetwork = WScript.CreateObject("WScript.Network");
02.
         var oPrinters = WshNetwork.EnumPrinterConnections();
03.
        WScript.Echo();
04.
         WScript.Echo("Network printer mappings:");
05.
         for(i = 0; i < oPrinters.length; i += 2) {
06.
            WScript.Echo("Port " + oPrinters.Item(i) + " = " + oPrinters.Item(i + 1));
07.
         }
Aber wie binde ich das ein?
Bitte warten ..
Mitglied: DocuSnap-Dude
03.04.2010 um 20:03 Uhr
zu AndreasBrecht's Command:

zu 1) also so in etwa oder?

01.
.
02.
.
03.
    If not (objAdapter.IPAddress(IPdebut) => "172.16." ) then wscript.qui
04.
.
05.
.
06.
 
Danke Dir!
Bitte warten ..
Mitglied: AndreasBrecht
03.04.2010 um 21:38 Uhr
Hört sich gut an. Das könnte dan wohl singemäß so aussehen:

01.
set colPrinters = WshNetwork.EnumPrinterConnections
02.

03.
For Each P in ColPrinters
04.
  If Instr(P.Name, "11PRT02") > 0 Then Do Something
05.
Next
Bitte warten ..
Mitglied: AndreasBrecht
03.04.2010 um 21:41 Uhr
Eher so:

If Instr(objAdapter.IPAddress(IPdebut), "172.16." ) > 0 Then wscript.quit

Oder so:

If Left(objAdapter.IPAddress(IPdebut), 7) = "172.16." Then wscript.quit
Bitte warten ..
Mitglied: bastla
03.04.2010 um 22:07 Uhr
@AndreasBrecht
Eher so:
01.
set oPrinters = WshNetwork.EnumPrinterConnections
02.
For i = 1 To oPrinters.Count -1 Step 2
03.
    If InStr(oPrinters(i), "\\211PRT02\") > 0 Then WshNetwork.RemovePrinterConnection(oPrinters(i))
04.
Next
Grüße
bastla
Bitte warten ..
Mitglied: bastla
03.04.2010 um 22:19 Uhr
... oder doch so:
If InStr("#" & Join(objAdapter.IPAddress, "#"), "#172.16.") > 0 Then ...
Da eine Netzwerkkarte mehrere Adressen haben kann, stellt "objAdapter.IPAddress" ein Text-Array dar - mit dem "#" vorweg und als Verknüpfungszeichen beim "Join()" kann der Beginn jeder Adresse gekennzeichnet werden, sodass nicht auch zB "10.172.16.5" gefunden wird.

Grüße
bastla
Bitte warten ..
Mitglied: DocuSnap-Dude
04.04.2010 um 11:08 Uhr
Hi,

Super; danke euch beiden. Werd ich dienstag gleich testen! Ich geb dann noch Feedback! cool! Danke!
Bitte warten ..
Ähnliche Inhalte
VB for Applications
VBS Schleife
gelöst Frage von IleiesVB for Applications6 Kommentare

Hallo zusammen, Wie kann ich mit vbs machen, dass eine Musikdatei in einer Schleife ohne Ende immer wieder abgespielt ...

Microsoft Office
Microsoft Excel VBS
gelöst Frage von Mohji32Microsoft Office6 Kommentare

Guten Tag liebe Leute, ich kenne mich leider nicht sehr gut mit VBS aus aber habe angefangen mich einzuarbeiten. ...

VB for Applications
Excel VBS Datenvergleich
Frage von rocco61VB for Applications

Hallo zusammen, möchte ein Excel Makro in VB, das mit die Gleichheit von 2 Zellen in einer Meldung ausgibt. ...

VB for Applications
Vbs Script Hilfe
gelöst Frage von Dr.CornwallisVB for Applications3 Kommentare

Liebe Gemeinde, hat von euch zufällig jemand ein VBs Script das folgendes o.ä macht: Das Script wird per GPO ...

Neue Wissensbeiträge
Windows 7
Updategängelung auf Windows 10, die zweite
Information von Penny.Cilin vor 3 TagenWindows 71 Kommentar

Hallo, da Windows 7 im kommenden Jahr nicht mehr supportet wird, werden Nutzer von Window 7 home premium wieder ...

Internet
EU-Urheberrechtsreform: Zusammenfassung
Information von Frank vor 5 TagenInternet1 Kommentar

Auf golem.de gibt es eine Analyse von Friedhelm Greis, der das Thema EU-Urheberrechtsreform gut und strukturiert zusammenfasst. Zwar haben ...

Microsoft Office

Office365 Schwachstellen bei Sicherheit und Datenschutz

Information von Penny.Cilin vor 6 TagenMicrosoft Office9 Kommentare

Auf Heise+ gibt es einen Artikel bzgl. Office365 Schwachstellen. Das ist noch ein Grund mehr seine Daten nicht in ...

Sicherheit
Schwachstellen in VPN Clients
Tipp von transocean vor 8 TagenSicherheit2 Kommentare

Moin, es gibt Sicherheitslücken bei VPN Clients namhafter Hersteller, wie man hier lesen kann. Gruß Uwe

Heiß diskutierte Inhalte
Windows Installation
Windows10 Home Neuinstallation - Raketentechnik
Frage von spacyfreakWindows Installation15 Kommentare

"Kannst du den Rechner von der Tante von WindowsXP auf Windows10 Home upgraden" haben sie gefragt? "Sicher, was kann ...

Utilities
Teamviewer 9.x "out of date" ??
gelöst Frage von keine-ahnungUtilities13 Kommentare

Moin at all, mein topaktueller teamviewer (alles 9.x - releases) verweigert seit heute die Arbeit und bemeckert: "the remote ...

Peripheriegeräte
PS2 Y-Kabel für Maus+Tastatur an PS2 Combo-Anschluss ASUS Prime X370-A
gelöst Frage von Windows10GegnerPeripheriegeräte11 Kommentare

Hallo, ich bin am Überlegen das o.g. Motherboard anzuschaffen. Da ich aber noch PS/2 für Maus+Tastatur benötige (bei optischen ...

Windows 10
Netzlaufwerk verschwindet (aber nur bestimmter Laufwerksbuchstabe)
gelöst Frage von survial555Windows 1010 Kommentare

Hallo, ich habe ein ganz seltsames Problem. Systemumgebung: Server 2012 R2 als DC und Windows 10 Pro als Clients ...