现在的位置: 首页 > 综合 > 正文

如何把网络共享目录映射为本地驱动器

2013年08月24日 ⁄ 综合 ⁄ 共 1335字 ⁄ 字号 评论关闭

要映射一个网络目录为本地驱动器,需要调用系统DLLWNetAddConnection2函数来进行添加。

 

首先,系统函数的申明如下:

using System.Runtime.InteropServices;

 

    [DllImport("mpr.dll", EntryPoint="WNetAddConnection2")]

    public static extern uint WNetAddConnection2(

[In] NETRESOURCE lpNetResource,

string lpPassword,

string lpUsername,

uint dwFlags);

 

    [DllImport("Mpr.dll")]

    public static extern uint WNetCancelConnection2(

string lpName,

uint dwFlags,

bool fForce);

 

    [StructLayout(LayoutKind.Sequential)]

    public class NETRESOURCE

    {   

        public int dwScope;   

        public int dwType;

        public int dwDisplayType;   

        public int dwUsage;   

        public string LocalName;   

        public string RemoteName;   

        public string Comment;   

        public string Provider;

    }

 

    添加映射网络驱动器调用的代码如下:

    NETRESOURCE myNetResource = new NETRESOURCE();       

    myNetResource.dwScope = 2;       //2:RESOURCE_GLOBALNET           

    myNetResource.dwType = 1 ;       //1:RESOURCETYPE_ANY            

    myNetResource.dwDisplayType = 3; //3:RESOURCEDISPLAYTYPE_GENERIC          

    myNetResource.dwUsage = 1;       //1: RESOURCEUSAGE_CONNECTABLE    

    myNetResource.LocalName = "T:";       

    myNetResource.RemoteName = yourNetworkPath;       

    myNetResource.Provider = null;       

 

    uint nret = WNetAddConnection2( myNetResource, pwd, username, 0);

    注意:如果正确,返回值是0;否则错误。

 

    删除映射网络驱动器调用的代码如下:

    uint nret = WNetCancelConnection2( yourNetDriveName, 1, true);

抱歉!评论已关闭.