打开文件夹并选择多个文件

时间:2010-04-12 07:27:18

标签: c# file explorer directory

在C#中我想打开资源管理器,在这个资源管理器窗口中必须选择一些文件。我这样做:

        string fPath = newShabonFilePath;

        string arg = @"/select, ";

        int cnt = filePathes.Count;
        foreach (string s in filePathes)
        {
            if(cnt == 1)
                arg = arg + s;
            else
            {
                arg = arg + s + ",";
            }
            cnt--;
        }

        System.Diagnostics.Process.Start("explorer.exe", arg);

但只选择了“arg”的最后一个文件。当打开资源管理器窗口时,如何使所有arg文件都被选中..?我认为可以做到这一点,因为我见过很多Windows应用程序,有这个技巧。例如,当我将我的DSLR相机中的图片导入到PC时,最终选择了Windows资源管理器并选择了所有新导入的图像。

也许有一些选项,可以从指定的文件夹中选择所有文件。?

2 个答案:

答案 0 :(得分:2)

explorer.exe /select只需要1个参数。来自KB 314853

  

/ select,打开一个窗口视图,其中包含指定的文件夹,文件或程序。

答案 1 :(得分:0)

你能在循环中启动每个文件吗?

foreach (string s in filePaths)
    System.Diagnostics.Process.Start("explorer.exe", "/select, "+s);

P.S。 string.Join是.NET

的一个未充分利用的功能