NX二次开发-打开文件夹,并同时选中指定文件
- NX9+VS2012
- #include <uf.h>
- #include <uf_ui.h>
- #include <uf_part.h>
- #include <atlstr.h>
- #include <iostream>
- #include <sstream>
- UF_initialize;
- //获取当前part所在路径
- char part_fspec[MAX_FSPEC_SIZE+];
- UF_PART_ask_part_name(UF_PART_ask_display_part(), part_fspec);
- //转换
- char new_fspec[];
- sprintf(new_fspec, "/select, %s", part_fspec);
- //打开并选中状态
- ShellExecute(NULL,"open","Explorer.exe",new_fspec,NULL,SW_SHOWDEFAULT);
- UF_terminate();
- Caesar卢尚宇
- 2019年7月26日
以下
转载/原文出处https://blog.csdn.net/leehong2005/article/details/8613120#
如何用程序打开一个文件,并选中这个文件夹中指定的文件呢?其实这个功能用得很多。
1.方法一
- ShellExecute(
- NULL,
- _T("open"),
- _T("Explorer.exe"),
- _T("/select, D:\\a.mp3"),
- NULL,
- SW_SHOWDEFAULT);
打开D盘,并选中a.mp3这个文件。
2.方法二
用 ShellExecuteEx 函数:
- HELLEXECUTEINFO shex = { };
- 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
这句话执行的效果跟上面方式一与方式二的效果相同。
NX二次开发-打开文件夹,并同时选中指定文件的更多相关文章
- NX二次开发-打开弹出当前part所在的文件夹
#include <uf.h> #include <uf_part.h> #include <atlstr.h> #include <iostream> ...
- C# 1.将整个文件夹复制到目标文件夹中 2.将指定文件复制到指定目标文件夹中
].Items.Clear(); string filePath = Application.StartupPath; string sourcePath = Path.Combine(filePat ...
- NX二次开发-打开part对话框UF_UI_open_part
这是UFUN帮助的官方例子 /****************************************************************************** Copyri ...
- unity 打开文件夹并鼠标选中某文件
System.Diagnostics.Process p = new System.Diagnostics.Process(); p.StartInfo.FileName = "explor ...
- NX二次开发-Block UI C++界面Specify Point(指定点)控件的获取(持续补充)
Specify Point(指定点)控件的获取 NX9+VS2012 #include <uf.h> #include <uf_ui.h> UF_initialize(); / ...
- java 复制指定目录中的所有文件和文件夹到另一个指定文件夹中
package com.test; import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream ...
- [转]C#中调用资源管理器(Explorer.exe)打开指定文件夹 + 并选中指定文件 + 调用(系统默认的播放类)软件(如WMP)打开(播放歌曲等)文件
原文:http://www.crifan.com/csharp_call_explorer_to_open_destinate_folder_and_select_specific_file/ C#中 ...
- NX二次开发-UFUN将工程图转成CGM和PDF文件UF_CGM_export_cgm
文章转载自唐康林NX二次开发论坛,原文出处: http://www.nxopen.cn/thread-126-1-1.html 刚才有同学问到这个问题,如果是用NXOpen来做,直接录制一下就可以了: ...
- NX二次开发-UFUN修改当前导出CGM文件选项设置UF_CGM_set_session_export_options
文章转载自唐康林NX二次开发论坛,原文出处: http://www.nxopen.cn/thread-126-1-1.html 刚才有同学问到这个问题,如果是用NXOpen来做,直接录制一下就可以了: ...
随机推荐
- vue-cli 3.0版本,配置代理Proxy,不同环境不同target(生产环境,uat环境和本地环境的配置)
1.在项目的的根目录下新建vue.config.js 2.新建一个config包,里面存放不同的环境文件,里面包含:pro.env.js(生产环境配置),uat.env.js(测试环境配置),dev. ...
- vue2 开发环境部署 及 打包配置
一.脚手架工具(vue2 的脚手架工具是 vue-cli) 1.脚手架工具的安装 参考 : https://blog.csdn.net/wulala_hei/article/details/804 ...
- php开发面试题---vue面试题(vue.js的好处及作用)
php开发面试题---vue面试题(vue.js的好处及作用) 一.总结 一句话总结: 双向数据绑定:在做ajax的时候,更新实在是太方便了 用数据绑定的思想,vue可以简单写单个页面,也可以写一个大 ...
- 比较器CompareTo的使用
比较器CompareTo的使用 源码 package test; import java.text.SimpleDateFormat; import java.util.Date; public cl ...
- 获取hdfs集群信息(fs.defaultFS)
[root@hive-dp-7bd6fd4d55-wctjn hive-1.1.0-cdh5.14.0]# hdfs getconf -confKey fs.default.name19/12/04 ...
- Java Jar Manifest
JAR文件可以可选地在META-INF目录中包含名为MANIFEST.MF的Manifest文件.Manifest文件包含有关JAR文件及其条目的信息.Manifest文件可以包含有关JAR文件的CL ...
- Android Telephony分析(六) ---- 接口扩展(实践篇)
本文将结合前面五篇文章所讲解的知识,综合起来,实现一个接口扩展的功能.如果还没有阅读过前面五篇文章的内容,请先阅读:<Android Telephony分析(一) — Phone详解 >& ...
- 20140506 visio 画布大小 栈实现队列 堆空闲内存地址链表 堆最大可分配的内存 可用内存链表
1.调整visio的画布大小 按住Ctrl鼠标移动到画布边缘即可 2.两个栈实现一个队列 一个栈用于入队,一个用于出队 #include<iostream> #include<sta ...
- leetcode.字符串.242有效的字母异位词-Java
1. 具体题目 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词. 注:判断两个字符串包含的字母是否完全一样. 示例 1: 输入: s = "anagram&q ...
- ajax实现异步刷新
1. 导入 json 包: jackson-annotations-2.8.9.jar jackson-core-2.8.9.jar jackson-databind-2.8.9.jar json.j ...