Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge

Batch: Netzlaufwerk einbinden

T-Rex / 6 Antworten / Flachansicht Nickles

Hallo zusammen,

ich stehe hier vor einem kleinen Problem:
Über die Gruppenrichtlinien (W2K SP4) habe ich ein Script eingebunden, welches beim Anmelden eines Users zwei Netzlaufwerke (jeweiliges Home und ein Public-Dir) einbinden soll (Anleitung für das Einbinden des Scripts).
@echo off
ping -n 1 -w 500 www > nul
IF %ERRORLEVEL% EQU 0 (
if "%USERNAME%" NEQ "Administrator" (
net use | find /i "X:" > nul
if %ERRORLEVEL% GEQ 1 (
net use X: \\\\www\\%USERNAME% /user:%USERNAME% /persistent:no > nul
if %ERRORLEVEL% NEQ 0 (
; echo \\\\www\\%USERNAME% konnte nicht eingebunden werden
)
) else (
; echo X: bereits eingebunden
)
)

net use | find /i "W:" > nul
if %ERRORLEVEL% GEQ 1 (
net use W: \\\\www\\wwwhome /persistent:no > nul
if %ERRORLEVEL% NEQ 0 (
; echo \\\\www\\wwwhome konnte nicht eingebunden werden
)
) else (
; echo W: bereits eingebunden
)
) else (
; echo Server nicht verfuegbar
)

Die Befehle habe ich in einer Shell getestet und da liefen sie ohne Probleme. Im Script verpackt ist %ERRORLEVEL% jedoch immer 0, auch wenn der zuvor ausgeführte Befehl fehlschlägt.

Was mache ich falsch?

Alternativ:
Wie kann ich testen, ob das Laufwerk X bereits eingebunden ist?

Zur Not kann ich mir eine VB-Anwendung schreiben, die die Laufwerke einbindet, ich möchte es jedoch mit den Boardmitteln von Windows tun.


Vielen Dank im Voraus.

 GrüßeT-Rex 
bei Antwort benachrichtigen