我想打开Windows资源管理器窗口,然后在C#/ VB.Net中再次将其关闭 目前,我可以使用以下代码打开资源管理器窗口:
Dim process = System.Diagnostics.Process.Start("explorer.exe", baseFilePath)
但是,当我尝试在进程中杀死()时,出现错误,并且尝试关闭窗口(),但没有任何反应。显然,它与资源管理器是受保护的资源有关...
当我尝试kill()时,我得到:无法处理请求,因为该进程已退出。
at System.Diagnostics.Process.GetProcessHandle(Int32 access, Boolean throwIfExited)
at System.Diagnostics.Process.Kill()
有人知道如何专门在Windows资源管理器中打开然后关闭代码吗? 干杯!
我为什么要这样做?
我们有网络驱动器,其中保存了大量文件,但对于某些 原因,Windows在尝试访问驱动器时出现错误 以编程方式,即使连接到驱动器也是如此。但是,如果 用户打开Windows资源管理器,Windows自行修复,程序可以 访问驱动器。所以我想将此代码放在错误处理程序中 该程序可以重新尝试打开自己。
答案 0 :(得分:-1)
这是我的做法:
通过name
杀死了浏览器进程foreach (var process in Process.GetProcessesByName("explorer"))
{
process.Kill();
}
Process.Start(Path.Combine(Environment.GetEnvironmentVariable("windir"), "explorer.exe"));
我还添加了app.manifest文件及其下面的代码片段,以授予应用程序管理员权限
< requestedExecutionLevel level="requireAdministrator" uiAccess="false" />