Feedback

C# - Netzlaufwerke verbinden/trennen - (mit User u. Passwort)

Veröffentlicht von am 09.08.2010
(0 Bewertungen)
Usings
using System.Diagnostics;

Erklärung
Mit Hilfe dieses Snippets können Sie ganz leich Netzlaufwerke verbinden und trennen,
auch wenn diese ein Passwort zur Auth. brauchen. (z.B. FTP oder WebDAV)

Syntax
//Nur den Laufwerksbuchstaben angeben und fertig
MapNetworkDriveDisconnect("L:");

//Bei einer Verbindung die einen Username und PW braucht
MapNetworkDriveConnect("N:", "https://webdav.myserver.ms", "user", "pw");

//Bei einer nicht passwort geschützten Verbindung
MapNetworkDriveConnect("N:", "\\server\freigabe", string.Empty, string.Empty);


Alternativ kann auch diese Funktion benutzt werden:
http://msdn.microsoft.com/en-us/library/aa385413(VS.85).aspx
GFU-Schulungen  [Anzeige]

VB.NET Komplett

Sie stehen vo der Aufgabe, individuelle Anwendungen für Windows zu schreiben. Hier ist VB.NET die optimale Sprache. Sie erlernt sich recht leicht und passt sich komplett in die .NET Umgebung von Microsoft ein. Nach der Schulung entwickeln Sie anwenderfreundliche Programme in VB.NET . Mit den objektorientierten Modellen in VB.NET erzeugen Sie außerdem wiederverwendbare Komponenten.

XML und .NET Überblick

Um auf dem neuesten Wissensstand zu sein, sollten Sie unser aktuelles ASP .NET Komplett Seminar belegen.
Nach dem Seminar kennen Sie die wichtigsten Strömungen in der Software-Technologie

        /// <summary>
        /// Disconnects a network drive
        /// </summary>
        /// <param name="drive">Drive (z.B. L:)</param>
        private void MapNetworkDriveDisconnect(string drive)
        {
            Process p = new Process();
            p.StartInfo.FileName = "net";
            p.StartInfo.Arguments = string.Format("use {0} /DELETE", drive);
            p.StartInfo.UseShellExecute = false;
            p.Start();
        }
        /// <summary>
        /// Connects a network drive
        /// </summary>
        /// <param name="drive">The drive letter (e.g. L:)</param>
        /// <param name="server">The UNC path to the remote drive (e.g. \\MyServer\MyPrinter)</param>
        /// <param name="user">The User</param>
        /// <param name="password">The Password Used For Login</param>
        private void MapNetworkDriveConnect(string drive, string server, string user, string password)
        {
            Process p = new Process();
            p.StartInfo.FileName = "net";
            p.StartInfo.Arguments = string.Format("use {0} {1} /user:{2} {3}", drive, server, user, password);
            p.StartInfo.UseShellExecute = false;
            p.Start();
        }

4 Kommentare zum Snippet

TripleX87 schrieb am 19.08.2010:
ich habe mit der Win32API-Funktion WNetAddConnection2 bessere Erfahrungen gemacht, da bei der das Einbinden der Netzlaufwerke schneller vonstatten ging.
Firendeath schrieb am 12.10.2010:
Hab mal n Verweis auf die MSDN - Seite reingepackt.
;)
Firendeath schrieb am 12.10.2010:
Wobei ich diese Methode um einiges leichter finde. :P
-Rockbiest- schrieb am 17.07.2017:
Wäre es möglich diese Methode irgendwie auch zu verwenden, wenn zwischen dem Netzlaufwerk auf dem die Webanwendung installiert ist und einem Fileserver eine Firewall steht?
 

Logge dich ein, um hier zu kommentieren!