Ich habe ein kleines Skript geschrieben, welches erstmal suboptimal funktioniert. Es verbindet einen Server wenn er erreichbar ist als Y: oder löscht dieses Netzlaufwerk falls er nicht erreichbar ist.
Bei drei Sachen weiß aber nicht weiter:
1. Wenn der Server pingbar ist, prüfe ich im Moment nur ob das Laufwerk Y: existiert und gehe davon aus, dass dieser Buchstabe mit genau diesem Server verknüpft ist. (zweite if) Eigentlich müsste ich aber prüfen ob der Server auch wirklich auf Y: gemappt ist. Könnte ja auch ein USB Stick auf Y: sein?! Weiß jemand, wie es möglich ist zu prüfen, ob ein Server auf ein bestimmtes logisches Laufwerk gemappt ist?
2.Wenn der Server nicht pingbar ist, funktioniert das Skript nur beim ersten Durchlauf zufriedenstellend. Denn beim zweiten Durchlauf ist Y: ja schon gelöscht worden. Ich bekomme dann die Fehlermeldung:
Zitat
the Network connection could not be found
Ich weiß aber im Moment nicht wie ich das verbessern kann.
3. Dann noch eine weitere Frage am Rande. Kann man das Skript aufgrund einer Änderung des Netzwerkes automatisch starten? Also wenn ich den Netzwerkstecker rausziehe, soll das Skript loslaufen?
@ECHO Off set UserID=xyz set Password=xyz set FileserverMount=y: set FileserverIP=xx.yy.zzz.zzz set FileserverFreigabe=xyz ping %FileserverIP%>nul if "%errorlevel%"=="0" ( echo Die Fileserver-IP "%FileserverIP%" ist erreichbar. if exist %FileserverMount%\NUL ( echo "%FileserverMount%\" ist bereits verbunden. echo Keine Žnderungen vorgenommen. ) ELSE ( echo "%FileserverMount%\" ist nicht verbunden. C:\winnt\system32\net.exe use %FileserverMount% \\%FileserverIP%\%FileserverFreigabe% /USER:%UserID% %Password% If "%errorlevel%"=="0" ( echo "%FileserverMount%\" wurde verbunden ) ) ) IF "%errorlevel%"=="1" ( echo Die Fileserver-IP "%FileserverIP%" ist nicht erreichbar. C:\winnt\system32\net.exe use %FileserverMount% /DELETE echo "%FileserverMount%\" wurde getrennt. ) pause
Vielen Dank
Ich bin für jeden Rat dankbar.
Gruß Matinko