da ich es leid bin, jedesmal unter Windows 10 meine Laufwerke (lokales Netzwerk, WebDav) manuell zu verbinden, diese nervigen Kennworteingaben zu bestätigen bzw. NetzwerkLW-Fehlermeldungen wegzuklicken, habe ich diesen kleinen Code geschrieben. Erfolgreich getestet mit WebDav-basierenden Cloud-Diensten wie OneDrive, Web.de, 1und1 und selbstverständlich auch lokale/globale Netzwerke.
Unter Windows 10 habe ich auch keine funktionierende interne Methode/Einstellung finden können, die mir das zufriedenstellend abnimmt, aber zum Glück gibt es ja den guten alten net use -Befehl!
Code: Select all
; NetUseMapping = prüft beim Hochfahren die Existenz des LogonUI.exe Prozesses und initiiert nach erfolgreicher
; Windows10-Anmeldung die Laufwerks-Zuordnung für Netzwerk und WebDAV-Speicher ...... Windows 10.1809 / 64Bit ✔
; ======================================================================================================================
#NoEnv
#SingleInstance force
SetBatchLines -1
SetWinDelay, -1
; ======================================================================================================================
Process, WaitClose, LogonUI.exe ; wartet bis LogonUI.exe nach der Anmeldung geschlossen wird
Check: ; Labelmarke zwecks wiederholender Prüfung
If !ErrorLevel ; 0 = wenn der Prozess geschlossen wurde
{
RunWait, net use /delete * /yes, , hide ; alle def. NW-Laufwerke trennen, anschl. mit LW-Zuweisung(en) verbinden
RunWait, net use N: \\UNC-Pfad /persistent:yes , , hide ; Netzlaufwerk
RunWait, net use O: https://webdav-Pfad /user:xxx Kennwort /persistent:yes , , hide ; WebDav 1
RunWait, net use W: https://webdav-Pfad /user:xxx Kennwort /persistent:yes , , hide ; WebDav 2
RunWait, net use Z: https://webdav-Pfad /user:xxx Kennwort /persistent:yes , , hide ; WebDav 3
DriveGet, NStatus, Status, N: ; N-Laufwerk-Status abrufen
DriveGet, OStatus, Status, O: ; O-Laufwerk-Status abrufen
DriveGet, WStatus, Status, W: ; W-Laufwerk-Status abrufen
DriveGet, ZStatus, Status, Z: ; Z-Laufwerk-Status abrufen
Status := NStatus OStatus WStatus ZStatus ; alle Statuswerte in eine Variable schreiben und anschl. auswerten
If InStr(Status, "Invalid") ; Check wiederholen, wenn min. eine Verbindung nicht hergestellt wurde
Goto Check
RunWait, explorer.exe ; Explorer öffnen zwecks Konnektivitätskontrolle
}
ExitApp
Für Verbesserungsvorschläge/Optimierungen bin ich gerne empfänglich...