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-Key: 194064

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

Printed on: April 16, 2024 at 14:04 o'clock

Member: rubberman
rubberman Nov 11, 2012 updated at 12:57:47 (UTC)
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
Member: Beckham25
Beckham25 Nov 11, 2012 updated at 12:43:21 (UTC)
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!")  
Member: rubberman
rubberman Nov 11, 2012 at 12:57:22 (UTC)
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
Member: Beckham25
Beckham25 Nov 11, 2012 at 14:11:33 (UTC)
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...
Member: rubberman
rubberman Nov 11, 2012 at 14:45:33 (UTC)
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
Member: Beckham25
Beckham25 Nov 12, 2012 at 07:16:40 (UTC)
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...