如何将Windows资源管理器打开到用户指定的某个目录?

时间:2014-06-17 09:57:56

标签: c# directory explorer

我的代码,

string pcname = @"remotepc";
string path = @"dir\sub\";
string remotepath = @"\\" + pcname + @"\C$\" + path;

System.Diagnostics.Process pexplorer = new System.Diagnostics.Process();
pexplorer.StartInfo.FileName = "explorer.exe";
pexplorer.StartInfo.Arguments = remotepath;
pexplorer.Start();

remotepath包含类似“\\ remotepc \ C $ \ dir \ sub”的字符串。如果我将此字符串复制到Windows资源管理器的addressbar中,它会向我显示此目录。

但是进入我的程序资源管理器是在主目录中打开的。 当我查看pexplorer.StartInfoArguments时,它包含类似的内容 “\\\\ remotepc \\ C $ \\用户\\使用\\应用程序数据\\本地\\”

如果我在程序中设置remotepath

System.Diagnostics.Process pexplorer = new System.Diagnostics.Process();
pexplorer.StartInfo.FileName = "explorer.exe";
pexplorer.StartInfo.Arguments = @"\\remotepc\C$\dir\sub";
pexplorer.Start();

它工作正常,这里有什么问题?

1 个答案:

答案 0 :(得分:0)

Process p = new Process();
p.StartInfo.FileName = @"explorer.exe";
p.StartInfo.Arguments = @"file:\\\" + @"Q:\somepath\...";
p.Start();

问题纯粹是网址。将“file:\\”添加到完整路径确实解决了我的问题。 http://blogs.msdn.com/b/freeassociations/archive/2005/05/19/420059.aspx csharphardcoreprogramming.wordpress.com