使用包含逗号的UNC路径参数启动资源管理器无法打开文件夹

时间:2012-12-12 15:28:58

标签: c# windows explorer processstartinfo

在UNC路径中使用逗号传递值(例如“\ servername \ Smith,John \ Documents \”)会导致以下操作启动Windows资源管理器,但它会打开“我的文档”而不是文件夹路径。如果我将路径粘贴到Windows资源管理器的地址栏中,该文件夹将正确打开。

public void OpenWindowsExplorer(string path) {
        var runExplorer = new ProcessStartInfo { FileName = "explorer.exe", Arguments = path };
        Process.Start(runExplorer);
    }

非常感谢任何关于为什么会这样做/如何解决问题的想法。

1 个答案:

答案 0 :(得分:1)

在路径上加上引号:

public void OpenWindowsExplorer(string path) {
    path = string.Format("\"{0}\"", path);
    var runExplorer = new ProcessStartInfo { FileName = "explorer.exe",
                                             Arguments = path };
    Process.Start(runExplorer);
}