Click here to Skip to main content
Licence CC (ASA 2.5)
First Posted 24 Apr 2004
Views 325,455
Bookmarked 99 times

Map Network Drive (API)

By | 18 May 2004 | Article
Class for interfacing to the "map network drive" windows interface

Image - netdrive0015.jpg

What does it do?

This is a class for interfacing with windows map network drive API's.

Introduction to the class...

  • Getting started

    Add the class file "cNetworkDrives0015.cs" to your project / solution.
    Add the "using" definition to your form, etc.
    using aejw.Network;
  • Example (Mapping a network drive)

     NetworkDrive oNetDrive = new aejw.Network.NetworkDrive();
     try{
        oNetDrive.LocalDrive = "m:";
        oNetDrive.ShareName = "\\ComputerName\Share"
        oNetDrive.MapDrive();
     }catch(Exception err){
        MessageBox.Show(this,"Error: "+err.Message);
     }
     oNetDrive = null;
  • Example (Unmapping a network drive)

     NetworkDrive oNetDrive = new aejw.Network.NetworkDrive();
     try{
        oNetDrive.LocalDrive = "m:";
        oNetDrive.UnMapDrive();
     }catch(Exception err){
        MessageBox.Show(this,"Error: "+err.Message);
     }
     oNetDrive = null;

Username and Password functions...

The following examples require the object / class to be declared.
     cNetworkDrive oNetDrive = new cNetworkDrive();
  • Mapping a network drive

    • //Map drive with current user credentials
      oNetDrive.LocalDrive = "m:";
      oNetDrive.ShareName = "\\ComputerName\Share1"
      oNetDrive.MapDrive();
    • //Map drive with specified user credentials
      oNetDrive.LocalDrive = "m:";
      oNetDrive.ShareName = "\\ComputerName\Share1"
      oNetDrive.MapDrive("Bob_Username","Bob_Password");
    • //Map drive with and prompt user for credentials
      oNetDrive.LocalDrive = "m:";
      oNetDrive.ShareName = "\\ComputerName\Share1"
      oNetDrive.PromptForCredentials = true;
      oNetDrive.MapDrive();
    • //Map drive using a persistent connection
      oNetDrive.LocalDrive = "m:";
      oNetDrive.Persistent = true;
      oNetDrive.SaveCredentials = true;
      oNetDrive.ShareName = "\\ComputerName\Share1"
      oNetDrive.MapDrive("Bob_Username","Bob_Password");
  • Unmapping a network drive

    • //Unmap a network connection
      oNetDrive.LocalDrive = "m:";
      oNetDrive.ShareName = "\\ComputerName\Share1"
      oNetDrive.UnMapDrive();
    • //Unmap a network connection ignoring network related errors
      oNetDrive.LocalDrive = "m:";
      oNetDrive.Force = true;
      oNetDrive.ShareName = "\\ComputerName\Share1"
      oNetDrive.UnMapDrive();
  • Other functions

    • //Display windows connection dialog
      oNetDrive.ShowConnectDialog(this);
      //Display windows disconnection dialog
      oNetDrive.ShowDisconnectDialog(this);
    • //Restore all persistent connections
      oNetDrive.RestoreDrives();

History

  • 14th May 2004 - build0015
    • LocalDrive and ShareName are now properties.
    • Dialog functions now use a form object instead of a window handle.
    • Renaming scheme for public functions and properties, MapNetworkDrive(...) is now MapDrive(...), etc...
    • Added Persistant option, Used for reconnecting a drive at logon.
    • Added SaveCredentials option, Allows windows to remember the user credentials when reconnecting a persistent connection.
    • Added Force option, for MapDrive calls, if a drive is connected it will disconnect that drive then reconnect to the new share.
    • Added PromptForCredintals option, for MapDrive calls, windows will ask for a username and password to use with the connection.
    • Added RestoreDrives function that restores persistent connections.
  • 30th April 2004 - build0012
    • Code refinements and tidying, added comments to the class.
  • 27th April 2004 - build0011
    • Adjusted declare tags, tidied class and article
  • 26th April 2004 - build0010
    • First version posted online

License

This article, along with any associated source code and files, is licensed under The Creative Commons Attribution-ShareAlike 2.5 License

About the Author

aejw

Web Developer

New Zealand New Zealand

Member

C#, VB.net (Web and forms), SQL Server, MySQL, ASP, Win32 API, ...
Site: aejw.com

Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
You must Sign In to use this message board. (secure sign-in)
 
Search this forum  
 FAQ
    Noise  Layout  Per page   
  Refresh
QuestionLatest version Pinmemberjeremycafe11113:09 29 Apr '12  
QuestionUnused drive letter PinmemberRoss Chang18:47 31 Oct '11  
QuestionSite Pinmembernenadvuckovic3:48 24 Oct '11  
Questionfor vb6 Pinmemberafdoal1:30 18 Sep '11  
Questiondoes not work under win7 limited account PinmemberxRayen4:13 13 Sep '11  
QuestionError in using Map network drive API Pinmemberk.parvez21:14 31 Mar '11  
GeneralMy vote of 5 PinmemberJulijan Sribar23:02 17 Jan '11  
GeneralMy vote of 5 Pinmemberemirucan0:15 10 Jan '11  
GeneralThank you!!! PinmemberGuillermo Toro13:17 8 Dec '10  
GeneralLast version PinmemberMember 6027496:11 10 Feb '10  
GeneralRe: Last version PinmemberFaxedHead21:45 27 Feb '10  
GeneralRe: Last version PinmemberMember 6027497:40 1 Mar '10  
GeneralNew Version 0028 PinmemberTim Gladney3:42 5 Feb '10  
Generalthankssssssss PinmemberMember 28813130:01 2 Feb '10  
QuestionHow do you expand a mapped drive? PinmemberSparkyNZ8:30 26 Nov '09  
GeneralThis is an old version Pinmemberyrodrigu15:33 4 Nov '09  
GeneralLPT bug Pinmemberdmageiras1:09 11 Jun '09  
GeneralThank you PinmemberJosh Andy21:16 27 May '09  
GeneralNew patch makes it doesn't work any more on Windows 2003 Pinmembersongkai23:50 12 May '09  
GeneralServer OS 2003 PinmemberMember 456327911:00 11 May '09  
GeneralYour website is down AEJW.com Pinmembermm77722:20 7 May '09  
GeneralServer O/S Pinmembermbaocha16:14 4 May '09  
GeneralAttempt to access invalid address PinmemberMember 365220319:21 14 Dec '08  
GeneralRe: Attempt to access invalid address Pinmemberaejw20:19 14 Dec '08  
This error tends to occur when the drive letter set is already in use or set incorrectly.
 
- aejw.com

GeneralRe: Attempt to access invalid address PinmemberMember 36522036:01 15 Dec '08  

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Mobile
Web04 | 2.5.120529.1 | Last Updated 19 May 2004
Article Copyright 2004 by aejw
Everything else Copyright © CodeProject, 1999-2012
Terms of Use
Layout: fixed | fluid