如何在应用程序中映射网络驱动器


 ---- 我们知道在WINDOWS的平台上可以实现网络驱动器的映射,但在应用程序中如何映 射呢?以下的这个小程序就是演示如何在用户的应用程序中映射网络驱动器。在这里主 要用到了WINDOWS的两个API函数WNetAddConnection2(建立网络驱动器的映射)和 WNetCancelConnection2(取消网络驱动器的映射)以及一个NETRESOURCE结构(用来设 置网络资源)。---- 为了节省篇幅,我在这里只列出本演示程序的主要部分 OnMountButton (为建立网络驱动器的映射)和OnUnmountButton(为取消网络驱动器 的映射)。其中在下面的出现m_NetpathEdit 和m_DriveEdit 为用VC++定义的CEdit控 键。分别接收输入的网络路径和要建立的本地的驱动器盘符。它们都放置在一个对话框 中,如下图所示(略) ---- 建立网络驱动器的映射。

void CMountDlg::OnMountButton() 
{ 
	// TODO: Add your control notification handler code here 
	char netpath[MAX_PATH];
	//输入的网络路径 m_NetpathEdit.GetWindowText(netpath, sizeof(netpath)); 
	char drv[MAX_PATH]; 
	//本地的驱动器盘符 m_DriveEdit.GetWindowText(drv, sizeof(drv)); 
	NETRESOURCE netres; netres.dwScope=RESOURCE_GLOBALNET; 
	netres.dwType=RESOURCETYPE_ANY; 
	netres.dwDisplayType=RESOURCEDISPLAYTYPE_GENERIC; 
	netres.dwUsage=RESOURCEUSAGE_CONNECTABLE; 
	netres.lpLocalName=drv; netres.lpRemoteName=netpath; 
	netres.lpComment=NULL; netres.lpProvider=NULL; 
	DWORD rslt=WNetAddConnection2(&netres, NULL, NULL, 0); 
	CString str; 
	str.Format("WNetAddConnection2() return code=%d", rslt); 
	MessageBox(str); 
} 

取消网络驱动器的映射

void CMountDlg::OnUnmountButton() 
{
	// TODO: Add your control notification handler code here 
	char drv[MAX_PATH]; 
	//本地的驱动器盘符 
	m_DriveEdit.GetWindowText(drv, sizeof(drv)); 
	DWORD rslt=WNetCancelConnection2(drv, 0, FALSE); 
	CString str; 
	str.Format("WNetCancelConnection2() return code=%d", rslt); 
	MessageBox(str); 
	//显示信息成功与否 return code =0 成功 否则 建立失败 
} 


---- 本程序在VC++6.0及windows95/98/nt下编译通过。注意在程序的编译连接中加入 mpr.lib,我们用两个API函数在这个库中。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值