|
发表于 2011-12-5 10:21:14
|
显示全部楼层
::Mpr := ..raw.loadDll("Mpr.dll")
WNetAddConnection2 = ::Mpr.api("WNetAddConnection2A","int(struct lpNetResource,string lpPassword,string lpusername,int dwFlags)")
WNetCancelConnection2 = ::Mpr.api("WNetCancelConnection2A","int(string lpName,int dwFlags,bool fForce)")
//声明结构体
class NETRESOURCE {
INT dwScope;
INT dwType;
INT dwDisplayType;
INT dwUsage;
string lpLocalName;
string lpRemoteName;
string lpComment;
string lpProvider;
}
connectHostShareFolder = function( ip, username="", password="", strShareName, showDiskPatition = "X:"){
var strConnect = "\\" + ip + "\" + strShareName;
var netResource = NETRESOURCE();
netResource.dwScope = 0x1/*_RESOURCE_CONNECTED*/;
netResource.dwType = 0x1/*_RESOURCETYPE_DISK*/;
netResource.dwDisplayType = 0x3/*_RESOURCEDISPLAYTYPE_SHARE*/;
netResource.lpLocalName = showDiskPatition
netResource.lpRemoteName = strConnect;
var dwRes = WNetAddConnection2( netResource,password,username,0x1/*_CONNECT_UPDATE_PROFILE*/);
return (dwRes == 0x0/*_NO_ERROR*/ || dwRes == 0x4C3/*_ERROR_SESSION_CREDENTIAL_CONFLICT*/) ) ;
}
disConnectHostShareFolder = function(ip, strShareName,bForceClose ){
strShareName = "\\" + ip + "\" + strShareName;
var dwResult = WNetCancelConnection2 (strShareName,0x1/*_CONNECT_UPDATE_PROFILE*/,bForceClose);
return dwResult == 0x0/*_NO_ERROR*/
}
//创建共享文件夹映射
connectHostShareFolder("IP地址","用户名","密码","共享名") |
|