如何用程序打开一个文件,并选中这个文件夹中指定的文件呢?其实这个功能用得很多。
1.方法一
- ShellExecute(
- NULL,
- _T("open"),
- _T("Explorer.exe"),
- _T("/select, D:\\a.mp3"),
- NULL,
- SW_SHOWDEFAULT);
打开D盘,并选中a.mp3这个文件。
2.方法二
用 ShellExecuteEx 函数:
- HELLEXECUTEINFO shex = { 0 };
- shex.cbSize = sizeof(SHELLEXECUTEINFO);
- shex.lpFile = _T("explorer");
- shex.lpParameters = _T(" /select, D:\\a.mp3");
- shex.lpVerb = _T("open");
- shex.nShow = SW_SHOWDEFAULT;
- shex.lpDirectory = NULL;
-
- ShellExecuteEx(&shex);
其实上面最本质的都是用 explorer 命令。
它的命令如下:
- Explorer [/e][,/root,<object>][[,/select],<sub object>]
- /e
- Use Explorer view (scope and results pane view). The default is
- Open view (results in pane view only).
- /root<object>
- Specify the object in the "normal" name space that is
- used as the root (top level) of this Explorer/Folder (i.e., local
- path or UNC name). The default is the Desktop).
- /Select
- The parent folder opens and the specified object is selected.
- <sub object> Specify the folder unless /select is used. The
- default is the root.
Explorer /select, C:\Windows\Calc.exe
打开C:\Windows目录,并选中Calc.exe这个文件。
注意 /select后面有一个逗号,这个不要忘记了。
你可以在cmd下面,输出如下命令:
explorer /select, D:\a.mp3
这句话执行的效果跟上面方式一与方式二的效果相同。
转自:http://blog.csdn.net/leehong2005/article/details/8613120