使用ShellExecute打开目标文件所在文件夹并选中目标文件
转载:http://blog.csdn.net/chenlycly/article/details/7366364
转载:http://bbs.csdn.net/topics/50440550
ShellExecute很常用,我们可以使用它调用另外一个exe可执行程序,也可以使用它来打开指定的目录或文件。本文主要讨论如何通过ShellExecute来打开目标文件所在文件夹并选中目标文件。
刚开始尝试用下面的代码实现想要的功能:
CString str = _T("E:\\TestDir\\test.txt");
ShellExecute( NULL, _T("open"), _T("explorer.exe"), str, NULL, SW_SHOWNORMAL );
但是没有达到预定的效果,而是直接将指定的文件打开了,我只想打开指定文件所在的目录并选中该文件。通过查阅网上相关话题,应使用如下的代码:
CString str = _T("/select, E:\\TestDir\\test.txt");
ShellExecute( NULL, _T("open"), _T("explorer.exe"), str, NULL, SW_SHOWNORMAL );
当打开指定的目录或文件会使用explorer.exe资源管理器,就需要了解Explorer相关命令的参数了。
命令格式
Explorer
[/n][/e][[,/root],[path]][[,/select],[path filename]]
参数说明
/n表示以“我的电脑”方式打开一个新的窗口,通常打开的是Windows安装分区的根目录。
/e表示以“资源管理器”方式打开一个新的窗口,通常打开的也是Windows安装分区的根目录。
/root,[path]表示打开指定的文件夹,/root表示只显示指定文件夹下面的文件(夹),不显示其它磁盘分区和文件夹;[path]表示指定的路径。如果不加/root参数,而只用[path]参数,则可以显示其它磁盘分区和文件夹中的内容。另外,[path]还可以指定网络共享文件夹。
/select,[path
filename]表示打开指定的文件夹并且选中指定的文件,[path
filename]表示指定的路径和文件名。如果不加/select参数,则系统会用相应的关联程序打开该文件。如果[path
filename]不跟文件名就会打开该文件夹的上级目录并选中该文件夹。(注意:“/select”参数后面的逗号不能丢)
注意:当路径中包含空格时可能会导致ShellExecute参数解析错误,所以最好是给路径加上双引号!
使用ShellExecute打开目标文件所在文件夹并选中目标文件的更多相关文章
- [转]C#中调用资源管理器(Explorer.exe)打开指定文件夹 + 并选中指定文件 + 调用(系统默认的播放类)软件(如WMP)打开(播放歌曲等)文件
原文:http://www.crifan.com/csharp_call_explorer_to_open_destinate_folder_and_select_specific_file/ C#中 ...
- C# winform打开文件夹并选中指定文件
例如:打开“E:\Training”文件夹并选中“20131250.html”文件 System.Diagnostics.Process.Start("Explorer.exe", ...
- python 获取当前py文件所在的位置 及对应的文件名称
# 导入sys整个模块 import sys # 使用sys模块名作为前缀来访问模块中的成员 print(sys.argv[0]) 当前文件名:12.py 程序运行结果: ============== ...
- Linux查看文件安装路径与文件所在路径
一.查看文件安装路径: 由于软件安装的地方不止一个地方,所有先说查看文件安装的所有路径(地址). 这里以Oracle为例.比如说我安装了Oracle,但是不知道文件都安装在哪些地方.放在哪些文件夹里, ...
- ShellExecute打开文件打开文件夹的用法
1 #include <uf.h> 2 #include <uf_part.h> 3 #include <atlstr.h> 4 #include <iost ...
- myeclipse,eclipse打开当前文件所在文件夹
方法一: eclipse打开当前文件所在文件夹的插件Run-->External Tools-->External Tools Configurations...new 一个 progra ...
- Eclipse添加小工具_打开当前文件所在文件夹
CopyRight yuhuashi http://www.cnblogs.com/chuyuhuashi/archive/2012/05/06/2485831.html 默认情况下使用eclip ...
- 【技术贴】Eclipse 右键打开当前文件所在文件夹
1.使用插件,百度:OpenExplorer_1.5.0.v201108051513.jar 2.默认情况下使用eclipse打开当前文件所在文件夹很麻烦,需要右键点击 Package Explore ...
- Eclipse 打开当前文件所在的文件夹
两种方法: 1.安装EasyExplorer插件,有了这个插件就可以很方便地打开资源文件所在的文件夹了. EasyExplorer 从 http://sourceforge.net/projects/ ...
随机推荐
- 用Iterator实现遍历集合
使用Collection类的Iterator,可以方便的遍历Vector, ArrayList, LinkedList等集合元素,避免通过get()方法遍历时,针对每一种对象单独进行编码. 示例: C ...
- ansible的入门级使用
author: headsen chen date: 2018-08-02 11:46:35 1,ansible的安装 yum install epel-release yum -y i ...
- 什么是runtime?什么是webgl?
一 什么是Runtime? Egret官方解释:https://www.egret.com/products/runtime.html 二.什么是WebGL渲染? egret官方解释:http://d ...
- IOS中使用轻量级数据库
IOS中使用轻量级数据库 目录 概述 IOS中的轻量级数据库 sqlite的方法 数据库的实用操作 第三方类库 FMDatabase 概述 IOS中的轻量级数据库 sqlite的方法 sqlite3 ...
- elk日志分析与发掘深入分析
elk日志分析与挖掘深入分析 1 为什么要做日志采集? 2 挖财自己的日志采集和分析体系应该怎么建? 2.1 日志的采集 2.2 日志的汇总与过滤 2.3 日志的存储 2.4 日志的分析与查询 3 需 ...
- 【BZOJ3280】小R的烦恼 最小费用最大流
[BZOJ3280]小R的烦恼 Description 小R最近遇上了大麻烦,他的程序设计挂科了.于是他只好找程设老师求情.善良的程设老师答应不挂他,但是要求小R帮助他一起解决一个难题. 问题是这样的 ...
- datatables如何让某个列中的值居中显示?
https://datatables.net/reference/option/columns.className 通过 columns.className 属性设置: 例如: js: columns ...
- localstorage - HTML 5 Web 存储总结---【巷子】
001.localStorage概念 在html5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储,解决了cookie存储空间不足的问题(cookie中每条cookie存储 ...
- 其他ip无法访问Yii的gii,配置ip就可以
该文件下的IP ///public $allowedIPs = ['127.0.0.1', '::1']; 修改这里的IP就可以了
- CH1807 Necklace【Hash】【字符串】【最小表示法】
1807 Necklace 0x18「基本数据结构」练习 背景 有一天,袁☆同学绵了一条价值连城宝石项链,但是,一个严重的问题是,他竟然忘记了项链的主人是谁!在得知此事后,很多人向☆同学发来了很多邮件 ...