【发布时间】:2014-03-16 20:07:15
【问题描述】:
我在 Windows 资源管理器中打开 VB.net 中的特定文件夹时遇到问题。我用过
Process.Start("explorer.exe", "Folder_Path")
当我尝试这个时,它总是在资源管理器中打开文档,无论我写什么。请帮忙。
【问题讨论】:
-
检查一下stackoverflow.com/questions/3887364/…>
标签: vb.net
我在 Windows 资源管理器中打开 VB.net 中的特定文件夹时遇到问题。我用过
Process.Start("explorer.exe", "Folder_Path")
当我尝试这个时,它总是在资源管理器中打开文档,无论我写什么。请帮忙。
【问题讨论】:
标签: vb.net
Process.Start("目录路径")
【讨论】:
尝试打开它:
Process.Start("explorer.exe", "/root,Folder_Path")
或者改变之前的路径:
SetCurrentDirectory("Folder_Path")
Process.Start("explorer.exe")
如果仍然失败,请使用 shell 命令:
Shell("explorer Folder_Path", AppWinStyle.NormalFocus)
【讨论】:
您可以使用预先选择的目录启动资源管理器,如下所示:
Process.Start("explorer.exe", String.Format("/n, /e, {0}", "d:\yourdirectory\"))
Microsoft KB article 中解释了 Windows 资源管理器选项。
【讨论】:
它只打开默认目录(MyDocuments)的原因可能是以下两个原因之一:
· 目录不存在。
· 目录路径名称中包含空格,包含空格的参数要用双引号括起来,这是编程的基本规则。
然后正确使用语法:
Dim Proc As String = "Explorer.exe"
Dim Args As String =
ControlChars.Quote &
IO.Path.Combine("C:\", "Folder with spaces in the name") &
ControlChars.Quote
Process.Start(Proc, Args)
【讨论】:
Process.Start("explorer.exe", "/select," + "C:\File_Name.txt")
.txt 可能是您所需要的。
【讨论】:
C:\File_Name.txt 存在时有效。否则 explorer.exe 会在根目录中打开,特别是如果文件名是 C:\temp\subdir\File_Name.txt。它不在C:\temp\subdir 中打开。
您可以像您说的那样尝试 Process.Start("explorer.exe", "Folder_Path")。 windows资源管理器打开文档文件夹的唯一原因是您输入错误的“文件夹路径”并且指定的文件夹不存在
【讨论】:
我知道这是一个老问题,但没有理由变得过于复杂;所以,就这样使用:
Process.Start("explorer.exe", Chr(34) & "folder to open" & Chr(34))
【讨论】: