2010-10-08 16 views
11

打开资源管理器窗口我有一个应用程序,它有一个选项来显示文件所在的文件夹中的选定文件。我的问题是,我如何实现这一目标?用指定的文件选择

为了澄清,如果我的程序中的用户选择了“Test.txt”文件,那么我想要一个Windows资源管理器窗口弹出并高亮显示用户选择的文件。您可以在LimeWire和uTorrent中看到类似的行为。如果您在其中任一程序中选择一个文件并选择“在文件夹中显示”,则会弹出一个Windows资源管理器窗口,其中突出显示并选择了该文件。我正试图复制这种行为。

我尝试使用以下行:

System.Diagnostics.Process.Start("Explorer"); 

这将弹出Windows的资源管理器窗口,但是,它似乎总是默认在“我的文档”文件夹中打开。

回答

25

在这里你去,

string fileToSelect = @"C:\temp.img"; 
string args = string.Format("/Select, \"{0}\"", fileToSelect); 

ProcessStartInfo pfi = new ProcessStartInfo("Explorer.exe", args); 
System.Diagnostics.Process.Start(pfi); 

注:添加\"之前{0}参数使fileToSelect字符串包含空格(如 “C:\我的文档”)。

从这个主题:
Programmatically select multiple files in windows explorer

干杯,