• NX二次开发-打开文件夹,并同时选中指定文件


     1 NX9+VS2012
     2 
     3 #include <uf.h>
     4 #include <uf_ui.h>
     5 #include <uf_part.h>
     6 #include <atlstr.h>
     7 #include <iostream>
     8 #include <sstream>
     9 
    10 
    11 UF_initialize;
    12 
    13 //获取当前part所在路径
    14 char part_fspec[MAX_FSPEC_SIZE+1];
    15 UF_PART_ask_part_name(UF_PART_ask_display_part(), part_fspec);
    16 
    17 //转换
    18 char new_fspec[256];
    19 sprintf(new_fspec, "/select, %s", part_fspec);
    20 
    21 //打开并选中状态
    22 ShellExecute(NULL,"open","Explorer.exe",new_fspec,NULL,SW_SHOWDEFAULT);
    23 
    24 UF_terminate();
    25 
    26 Caesar卢尚宇
    27 2019年7月26日

    以下

    转载/原文出处https://blog.csdn.net/leehong2005/article/details/8613120#

    如何用程序打开一个文件,并选中这个文件夹中指定的文件呢?其实这个功能用得很多。

    1.方法一

    1 ShellExecute(
    2     NULL,
    3     _T("open"),
    4     _T("Explorer.exe"),
    5     _T("/select, D:\a.mp3"),
    6     NULL,
    7     SW_SHOWDEFAULT);

    打开D盘,并选中a.mp3这个文件。

    2.方法二

    用 ShellExecuteEx 函数:

    1 HELLEXECUTEINFO shex = { 0 };
    2 shex.cbSize = sizeof(SHELLEXECUTEINFO);
    3 shex.lpFile = _T("explorer");
    4 shex.lpParameters = _T(" /select, D:\a.mp3");
    5 shex.lpVerb = _T("open");
    6 shex.nShow = SW_SHOWDEFAULT;
    7 shex.lpDirectory = NULL;
    8  
    9 ShellExecuteEx(&shex);

    其实上面最本质的都是用 explorer 命令。
    它的命令如下:

     1 Explorer [/e][,/root,<object>][[,/select],<sub object>]
     2 /e
     3    Use Explorer view (scope and results pane view). The default is
     4    Open view (results in pane view only).
     5 /root<object>
     6    Specify the object in the "normal" name space that is
     7    used as the root (top level) of this Explorer/Folder (i.e., local
     8    path or UNC name). The default is the Desktop).
     9 /Select
    10    The parent folder opens and the specified object is selected.
    11    <sub object>   Specify the folder unless /select is used. The
    12    default is the root.

    Explorer /select, C:WindowsCalc.exe
    打开C:Windows目录,并选中Calc.exe这个文件。
    注意 /select后面有一个逗号,这个不要忘记了。

    你可以在cmd下面,输出如下命令:
    explorer /select, D:a.mp3
    这句话执行的效果跟上面方式一与方式二的效果相同。

  • 相关阅读:
    hdu 1455 N个短木棒 拼成长度相等的几根长木棒 (DFS)
    hdu 1181 以b开头m结尾的咒语 (DFS)
    hdu 1258 从n个数中找和为t的组合 (DFS)
    hdu 4707 仓鼠 记录深度 (BFS)
    LightOJ 1140 How Many Zeroes? (数位DP)
    HDU 3709 Balanced Number (数位DP)
    HDU 3652 B-number (数位DP)
    HDU 5900 QSC and Master (区间DP)
    HDU 5901 Count primes (模板题)
    CodeForces 712C Memory and De-Evolution (贪心+暴力)
  • 原文地址:https://www.cnblogs.com/nxopen2018/p/11253478.html
Copyright © 2020-2023  润新知