【发布时间】:2022-08-19 20:26:19
【问题描述】:
我在 C# Windows-Form-Application (WinForms) 上工作并使用了以下代码:
System.Diagnostics.Process.Start(\"x\");
其中 x 是应该打开的文件夹的路径(不在 C:\\ 中的本地文件夹)。
问题是在运行程序时它给了我“访问被拒绝”错误。
我在谷歌上搜索,但我没有找到如何解决这个问题。
注意:此代码适用于控制台应用程序和 Windows 窗体(.Net 框架)。
-
文件夹不是进程(可执行文件)。您不能使用 Process.Start 来“启动”一个文件夹。
-
@蒂莫西G。不对。如果您传递一个文件夹,则文件资源管理器开始显示该文件夹
-
@史蒂夫说什么???这对我来说是个新闻。有趣...虽然在winforms中没有某种打开文件夹对话框吗?很久没有做winforms编码了。
-
是的,有一个 OpenFileDialog 和一个 FolderBrowser 控件可用于各自的任务。 (在代码中获取文件名或文件夹名)。将文件夹路径传递给 Process.Start 将使用文件资源管理器打开该文件夹,仅此而已。接下来不会与您自己的代码进行交互。
-
在 .Net 核心下 Process.Start() 将不是在资源管理器中启动文件夹路径 - 它会抛出访问被拒绝.
标签: c# windows visual-studio desktop-application desktop