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

VBScript - Alle Netzlaufwerke auf einmal löschen

Frage Entwicklung VB for Applications

Mitglied: TuXHunt3R

TuXHunt3R (Level 3) - Jetzt verbinden

09.12.2007, aktualisiert 10.12.2007, 14522 Aufrufe, 5 Kommentare

Hallo ans Forum

Ich muss per VBScript alle Netzlaufwerke auf einmal löschen, und zwar sollen die Laufwerke auch dann gelöscht werden, wenn noch Dateien offen sind.
Wie macht man das?

Oder anders gefragt: Wie macht man einen "net use * /d /y" in VBScript?
Mitglied: 58502
09.12.2007 um 22:33 Uhr
So:
01.
set shell = CreateObject("WScript.Shell") 
02.
shell.run "net use * /d /y",0
Bitte warten ..
Mitglied: TuXHunt3R
10.12.2007 um 08:57 Uhr
Herzlichen Dank, werds testen.
Was bedeutet das ",0" am Schluss der zweiten Zeile (sorry, bin absoluter VBScript-Anfänger, bin Batch-Fan )
Bitte warten ..
Mitglied: Biber
10.12.2007 um 09:29 Uhr
Moin TuX,

IMHO mehr Möglichkeiten hast Du, wenn Du die RemoteNetworkDrive-Methode des WshNetwork-Objects aufrufst.

Beispiel hier im Forum oder auf M$ Developer Network.

Beispiel/Zitat von der angegebenen Site:
01.
Dim WshNetwork 
02.
Set WshNetwork = WScript.CreateObject("WScript.Network") 
03.
WshNetwork. RemoveNetworkDrive"E:"
Vorteil/Begründung:
Die DOKUMENTIERTE Syntax...
01.
object.RemoveNetworkDrive(strName, [bForce], [bUpdateProfile])
....beinhaltet den bForce-Parameter, also das Trennen, auch wenn noch Files/Prozesse auf diesem Share offen sind.

Der "Net use /d"-Befehl akzeptiert zwar den undokumentierten Schalter /y oder /yes.
Ob er mehr macht, also tatsächlich ein FORCE wenigstens versucht, das solltest Du vorher einmal testen.
IMHO hat "NET USE" keinen verlässlichen Trenn-Trotzdem-Parameter.

Zu der Rückfrage mit dem Parameter 0 (falls 7stein nicht schon geantwortet hat): Ohne neues Fenster/Silent/im Hintergrund.

Grüße
Biber
Bitte warten ..
Mitglied: TuXHunt3R
10.12.2007 um 12:33 Uhr
Ob er mehr macht, also tatsächlich ein FORCE wenigstens versucht, das solltest Du vorher einmal testen.

Hab ich getestet. Ich hatte unter Vista das Problem, dass das Loginscript nicht richtig durchgelaufen ist. Bei meinem Prive hat er immer nach einer Eingabe verlangt, ob denn nun das Laufwerk wirklich getrennt werden solle, da noch Dateien geöffnet seien. Ich habe dann
01.
net use * /d
durch
01.
net use * /d /y
ersetzt, was prima geklappt hat.

Den Vorteil von net use * /d /y sehe ich darin, dass wirklich nur die existierenden Netzlaufwerke getrennt werden. Wenn ich nun eine Schleife basteln würde, die object.RemoveNetworkdrive auf allen Buchstaben von F: bis z: durchführen würde, müsste ich jedesmal noch überprüfen, ob eine Verbindung mit diesem Laufwerksbuchstaben existiert. Dies ist a. mühsamer zu coden und b. langsamer. Darum wollte ich bei net use * /d /y bleiben.
Aber trotzdem danke. Wenn das von Siebenstein funktioniert, werde ich das nehmen.
Bitte warten ..
Mitglied: TuXHunt3R
10.12.2007 um 20:14 Uhr
Die Lösung von Siebenstein hat prima geklappt, herzlichen Dank.

Beitrag hiermit gelöst.
Bitte warten ..
Neuester Wissensbeitrag
Off Topic

"Ich habe nichts zu verbergen"

(2)

Erfahrungsbericht von FA-jka zum Thema Off Topic ...

Ähnliche Inhalte
VB for Applications
gelöst Vbscript bestimmte Zeile ungeachtet der Nummerierung löschen (4)

Frage von aletri zum Thema VB for Applications ...

Batch & Shell
gelöst Alle Ordner bis auf die letzten 3 per Batch löschen (5)

Frage von Stefan2733 zum Thema Batch & Shell ...

Windows Server
gelöst Windows 2012R2 kann Datei nicht löschen (2)

Frage von Akcent zum Thema Windows Server ...

Heiß diskutierte Inhalte
CPU, RAM, Mainboards
Kaufberatung für mind. 8 verschiedene HighEnd-Mainboards (24)

Frage von yperiu zum Thema CPU, RAM, Mainboards ...

Mac OS X
Mac kann nicht im LAN pingen alle anderen schon (19)

Frage von smartino zum Thema Mac OS X ...

Hyper-V
Langsames Netzwerk i210 LAN Karte (10)

Frage von Akcent zum Thema Hyper-V ...

Netzwerke
Abisolierwerkzeug (10)

Frage von SarekHL zum Thema Netzwerke ...