今天写代码的时候需要一个打开指定文件夹并选中文件的功能,于是乎就度娘了一下,找到了2中方法,遂记之以留后用,这里也顺便给大家分享一下.
这个方法很简单,实际上是在C++代码中调用了windows的shell命令“explorer” ,例如下面我在控制台下通过这个命令打开C盘的Windows文件夹并且选中regedit.exe文件.
我使用命令 explorer /select,C:Windowsregedit.exe (注意斜杠的方向!注意中间的逗号)
可以看到执行命令后regedit.exe所在的文件夹被打开,并且regedit.exe文件被选中了.
OK,既然知道了这个命令,我们就来直接通过C++代码调用这个Shell命令吧,以打开并选中C:Windowsregedit.exe为例子,直接上代码:
方法一,使用函数ShellExecute:
1 2 3 4 5 6 7 |
ShellExecute(
NULL,
_T(
"open"
),
_T(
"Explorer.exe"
),
_T(
"/select, C:\Windowsregedit.exe"
),
NULL,
SW_SHOWDEFAULT);
|
方法二,用 ShellExecuteEx 函数:
1 2 3 4 5 6 7 8 |
HELLEXECUTEINFO shex = { 0 };
shex.cbSize =
sizeof
(SHELLEXECUTEINFO);
shex.lpFile = _T(
"explorer"
);
shex.lpParameters = _T(
" /select, C:\Windows\regedit.exe "
);
shex.lpVerb = _T(
"<span id="
2_nwp
" style="
width: auto; height: auto;
float
: none;
"><a id="
2_nwl
" href="
http:
//cpro.baidu/cpro/ui/uijs.php?app_id=0&c=news&cf=1001&ch=0&di=128&fv=17&is_app=0&jk=f2f2aa297e22240a&k=open&k0=open&kdi0=0&luki=1&n=10&p=baidu&q=80007180_cpr&rb=0&rs=1&seller_id=1&sid=a24227e29aaf2f2&ssp2=1&stid=0&t=tpclicked3_hc&tu=u1925163&u=http%3A%2F%2Fwww%2Eyouranshare%2Ecom%2Fcodeorg%2Fsid%2F136%2Ehtml&urlid=0" target="_blank" mpid="2" style="text-decoration: none;"><span style="color:#0000ff;font-size:16px;width:auto;height:auto;float:none;">open</span></a></span>");
shex.nShow = SW_SHOWDEFAULT;
shex.lpDirectory = NULL;
ShellExecuteEx(&shex);
|
本文出自悠然品鉴小悠,转载请注明出处http://www.youranshare/codeorg/sid/136.html
更多推荐
C++打开指定文件夹,并选中文件
发布评论