简单的说是由于给定的文件路径中含有多余的斜杠(),比如C:a\c.txt,在.NET类(比如File,FileInfo,Directory)中使用没有问题,但是如果使用Process.Start启动资源管理器(Explorer),
这个时候应该是使用Shell来进行操作,老式的Shell API对路径的判断更加严格,会产生这样的问题。
if (File.Exists(path)) { System.Diagnostics.ProcessStartInfo psi = new System.Diagnostics.ProcessStartInfo("Explorer.exe"); psi.Arguments = "/e,/select," + path; System.Diagnostics.Process.Start(psi); }