Imports System.IO Public Class Form1 Dim strUserName As String ' UserName für Anmelden beim Netzlaufwerk Dim strUserPassword As String ' Password für die Anmeldung Dim strDrive As String ' Laufwerksbuchstabe ' Dieser Source stammt von http://www.activevb.de ' und kann frei verwendet werden. Für eventuelle Schäden ' wird nicht gehaftet. ' Um Fehler oder Fragen zu klären, nutzen Sie bitte unser Forum. ' Ansonsten viel Spaß und Erfolg mit diesem Source ! ' Deklaration: Globale Form API-Konstanten ' Private Const RESOURCETYPE_DISK As Int32 = &H1 Const RESOURCETYPE_DISK = &H1 ' Deklaration: Globale Form API-Typen Public Structure NETRESOURCE Public dwScope As Integer Public dwType As Integer Public dwDisplayType As Integer Public dwUsage As Integer Public lpLocalName As String Public lpRemoteName As String Public lpComment As String Public lpProvider As String End Structure ' Deklaration: Globale Form API-Funktionen Private Declare Function WNetAddConnection2 Lib "mpr.dll" _ Alias "WNetAddConnection2A" ( ByRef lpNetResource As NETRESOURCE, ByVal lpPassword As String, ByVal lpUserName As String, ByVal dwFlags As Integer) As Integer Private Declare Function WNetCancelConnection2 Lib "mpr.dll" _ Alias "WNetCancelConnection2A" ( ByVal lpName As String, ByVal dwFlags As Integer, ByVal fForce As Integer) As Integer Dim udtNetzResource As NETRESOURCE Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load lblConnect.Text = "Es ist keine Verbindung hergestellt." ' Freien Laufwerks-Buchstaben ermitteln Dim i As Integer Dim sDrives As String = Join(Directory.GetLogicalDrives(), "") Dim sNextDrive As String = "" For i = 68 To 90 If Not sDrives.Contains(Chr(i) & ":") Then sNextDrive = Chr(i) & ":" ComboDrive.Items.Add(sNextDrive) End If Next ' R1 = Rechnername, C_SYSTEM = Name des zuzuweisenden Laufwerks udtNetzResource.lpRemoteName = "\\SDD-VMP03-VM09\DataFiles$\Digital Data\EnvelopeGenerator\EnvelopeGeneratorExport" ' Username & Passwort (anhängig vom Freigabestatus des Laufwerks). Inhalt ist ' bestenfalls egal strUserName = "dd-san01\Administrator" strUserPassword = "##25!45!3_works" udtNetzResource.dwType = RESOURCETYPE_DISK lblDriveCaption.Text = "" End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click ' Abfrage ob ein Laufwerksbuchstabe ausgewählt wurde If ComboDrive.Text = "" Then MsgBox("Es wurde kein freier Laufwerks-Buchstabe ausgewählt.") Else ' gewählter Laufwerksbuchstabe sichern für die Trennung strDrive = ComboDrive.Text udtNetzResource.lpLocalName = ComboDrive.Text Dim lngResult As Integer ' Hier wird verbunden ' dwFlag muss 1 sein lngResult = WNetAddConnection2(udtNetzResource, strUserPassword, strUserName, 1) If lngResult = 0 Then lblConnect.Text = "Verbunden." Else lblConnect.Text = "Verbindung nicht möglich." End If End If End Sub Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click ' gewählter Laufwerksbuchstabe sichern für die Trennung strDrive = ComboDrive.Text udtNetzResource.lpLocalName = ComboDrive.Text Dim lngResult As Integer lngResult = WNetCancelConnection2(strDrive, 0, True) If lngResult = 0 Then lblConnect.Text = "Getrennt." Else lblConnect.Text = "Trennung nicht möglich." End If End Sub End Class