MFC如何操纵后台以资源管理器的方式打开文件夹

     有时候为了在你的MFC程序中方便浏览某个文件夹,而不要总是在我的电脑那边开始找,这时候我们就可以操纵后台以资源管理器的方式打开文件夹,那么如何做呢?

    首先从网上下一份icePubDll.dll文件,然后放进工程的当前目录,然后再调用写语句,代码如下:(我的这些代码是写在某个按钮的响应函数上的,点击那个按钮即可打开你想默认的文件夹)

void DlgInfo::OnBtnOpenFloder()
{
	char  path[MAX_PATH];
	memset(path,0,MAX_PATH);
	GetCurrentDirectory(MAX_PATH,path);

	typedef int (WINAPI ICEPUB_OPEN)(char *strPath);
	ICEPUB_OPEN *icePub_open = 0;
	HINSTANCE hDLLDrv = LoadLibrary("icePubDll.dll");     // 还要 下载此dll文件 ,难道没有这种接口???
	if(hDLLDrv)
	{
		icePub_open = (ICEPUB_OPEN *)GetProcAddress(hDLLDrv, "icePub_open");
	}

	if(icePub_open != NULL)
	{
	         CString strPSNPath =CString(path)+"\\客户端文件管理\\DownLoadFile\\" + m_strAcct+"\\";  
                  icePub_open(strPSNPath.GetBuffer(strPSNPath.GetLength()));    // icePub_open的参数只可以是绝对路径
	}

	if(hDLLDrv)
		FreeLibrary(hDLLDrv);

}


 

要注意的是我试过了icePub_open参数里头填上当前路径,即不是绝对路径则无法打开,但也不会报错就是了。所以才先获得当前路径,即

char  path[MAX_PATH];
 memset(path,0,MAX_PATH);
 GetCurrentDirectory(MAX_PATH,path);

来获得当前目录,然后 CString strPSNPath =CString(path)+"\\客户端文件管理\\DownLoadFile\\" + m_strAcct+"\\"; 就变成完整的绝对路径,这样便能打开了。


 


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值