C++打开指定文件夹,并选中文件

时间:2021-09-05 12:44:17

今天写代码的时候需要一个打开指定文件夹并选中文件的功能,于是乎就度娘了一下,找到了2中方法,遂记之以留后用,这里也顺便给大家分享一下.

                                             

C++打开指定文件夹,并选中文件

     这个方法很简单,实际上是在C++代码中调用了windowsshell命令“explorer,例如下面我在控制台下通过这个命令打开C盘的Windows文件夹并且选中regedit.exe文件.

我使用命令explorer /select,C:Windowsregedit.exe  (注意斜杠的方向!注意中间的逗号)

C++打开指定文件夹,并选中文件

可以看到执行命令后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( "open" );
shex.nShow = SW_SHOWDEFAULT;
shex.lpDirectory = NULL;
ShellExecuteEx(&shex);


本文出自悠然品鉴小悠,转载请注明出处http://www.youranshare.com/codeorg/sid/136.html