Rubrik: Dateisystem · Laufwerke | VB-Versionen: VB2005, VB2008 | 15.10.10 |
Netzlaufwerk verbinden und trennen ohne Windows API Zwei Funktionen zum Verbinden und Trennen von Netzlaufwerken unter VB.NET - ohne dass man hierfür auf das Windows API zurückgreifen muss. | ||
Autor: Dieter Otter | Bewertung: | Views: 28.840 |
www.tools4vb.de | System: Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Vor längerer Zeit haben wir Ihnen bereits in einem anderen Tipp gezeigt, wie man ein Netzlauferk verbinden bzw. wieder trennen kann:
Netzlaufwerk verbinden und trennen
Heute stellen wir eine alternative Möglichgkeit vor, die nicht auf die Windows API Funktionen zurückgreift.
''' <summary> ''' Erstellt ein Netzlaufwerk ''' </summary> ''' <param name="Drive">Laufwerksbuchstabe</param> ''' <param name="UncPath">Freigegebenes Verzeichnis</param> ''' <param name="Username">Optional. Benutzername</param> ''' <param name="Password">Optional. Kennwort</param> Public Function AddNetworkDrive(ByVal Drive As String, _ ByVal UncPath As String, _ Optional ByVal Username As String = "", _ Optional ByVal Password As String = "") As Boolean Dim p As New Process() Try With p.StartInfo .FileName = "net" If Username.Length > 0 Then ' Netzlaufwerk mit Benutzername und Kennwort erstellen .Arguments = String.Format("use {0} ""{1}"" /user:""{2}"" {3}", _ Drive, UncPath, Username, Password) Else ' Netzlaufwerk ohne Benutzername und Kennwort erstellen .Arguments = String.Format("use {0} ""{1}""", Drive, UncPath) End If .UseShellExecute = False .CreateNoWindow = True End With p.Start() Return True Catch ex As Exception Return False End Try End Function
''' <summary> ''' Trennt das angegebene Netzlaufwerk ''' </summary> ''' <param name="Drive">Laufwerksbuchstabe</param> Public Sub RemoveNetworkDrive(ByVal Drive As String) Dim p As New Process() Try With p.StartInfo .FileName = "net" .Arguments = String.Format("use " & Drive & " /DELETE") .UseShellExecute = False .CreateNoWindow = True End With p.Start() Catch ex As Exception End Try End Sub
Aufrufbeispiel:
' Netzlaufwerk verbinden Dim sDrive As String = "O:" AddNetworkDrive(sDrive, "\\Rechnername\Freigabe")
' Laufwerk trennen RemoveNetworkDrive(sDrive)