beckham25
Goto Top

Vbs script Netzlaufwerk wird nicht verbunden

Hallo zusammen,
ich habe mir ein VBS Script zusammengebastelt, welches die verfügbaren Netzlaufwerke verbindet. Dies funktioniert soweit auch, bis auf ein Netzlaufwerk. Und zwar jenes Netzlaufwerk welches am NAS Server aus zwei Wörtern besteht. Vielleicht hat jemand eine Idee? Dieses Netzlaufwerk wird nicht verbunden...

Auszug aus der Datei:

WshShell.run("net use S: \\192.168.78.27\SV Nollingen Kennwort /user:192.168.78.27\user /persistent:no"),0,false

ich denke ein typischer Anfängerfehler, aber irgendwie komme ich nicht drauf.

Wer gibt mir einen Tipp?
Danke

Thomas

Content-ID: 194064

Url: https://administrator.de/contentid/194064

Ausgedruckt am: 25.11.2024 um 17:11 Uhr

rubberman
rubberman 11.11.2012 aktualisiert um 13:57:47 Uhr
Goto Top
Hallo Beckham25.

Da du ein Kommandozeilentool nutzt, musst du (wie in der Kommandozeile üblich) Pfade mit Leerzeichen in Anführungszeichen einschließen. Nun rufst du das Ganze aber in einem VBScript auf, in dem ein String bereits in Anführungszeichen gesetzt werden muss. Hier gilt die Regel, dass Anführungszeichen im String verdoppelt werden.
WshShell.run("net use S: ""\\192.168.78.27\SV Nollingen"" Kennwort /user:192.168.78.27\user /persistent:no"),0,false 

BTW: Wenn du schon VBScript nutzt, solltest du dir eventuell auch mal die MapNetworkDrive-Methode des "WSript.Network" Objekts ansehen.

Grüße
rubberman
Beckham25
Beckham25 11.11.2012 aktualisiert um 13:43:21 Uhr
Goto Top
Danke für den Hinweis mit dem Typ....

ich hab mir das ganze angesehen was die MapNetworkDrive Methode angeht, aber irgendwie steig ich da nicht ganz durch.
Wenn ich mehrere Laufwerke verbinden möchte kann der Code dann nicht so aussehen??

wscript.sleep 2000

Set wn = WScript.CreateObject("WScript.Network")  
wn.MapNetworkDrive "M:", "\\192.168.78.27\Laufwerk1", False  
wn.MapNetworkDrive "N:", "\\192.168.78.27\Laufwerk2", False  

msgbox("Alle Laufwerke wurden hergestellt!")  
rubberman
rubberman 11.11.2012 um 13:57:22 Uhr
Goto Top
Hallo Beckham25,

grundsätzlich ja. Du hast aber in deiner ursprünglichen Kommandozeile auch den Benutzer und das Passwort übergeben. Falls diese Angaben notwendig sind, müssen sie auch bei MapNetworkDrive angegeben werden.
Schau mal hier.

Grüße
rubberman
Beckham25
Beckham25 11.11.2012 um 15:11:33 Uhr
Goto Top
Etwas mache ich falsch mein Code ist derzeit

set net = CreateObject("WScript.Network")  

net.MapNetworkDrive ("M:"), ("\\192.168.78.27\Programme"), true, Benutzer, Passwort  
net.MapNetworkDrive ("N:"), ("\\192.168.78.27\Privat"), true, Benutzer, Passwort  
msgbox("Alle Laufwerke wurden hergestellt!")  


Komm nicht drauf, wer der Fehler liegt...
rubberman
rubberman 11.11.2012 um 15:45:33 Uhr
Goto Top
Hallo Beckham25.

Die Klammern kannst du weglassen.
Sind Benutzer und Passwort Variablennamen oder Strings?
Falls es Strings sind (also diese 5 Zeilen dein gesamtes Script ist), gehören sie in Anführungszeichen.

Grüße
rubberman
Beckham25
Beckham25 12.11.2012 um 08:16:40 Uhr
Goto Top
Danke für deine Unterstützung. Ich habe es gelöst bekommen. Für alle stille Mitleser werde ich heute Abend den Code hier ergänzen...