WPF:杀死 Windows GUI (explorer.exe) 然后恢复它
WPF: Kill Windows GUI (explorer.exe) and then restore it
我想要做的是终止 explorer.exe 主进程(这将导致以编程方式终止 Windows gui,然后再次打开 gui。我可以通过手动终止和然后通过 taskmanager 启动进程,但我无法弄清楚如何从 wpf 可视化 C# 程序中终止主资源管理器进程。此外,我尝试从 taskmanager 中终止它,然后通过以下方式再次启动 windows gui:
var proc = new Process
{
StartInfo = new ProcessStartInfo
{
FileName = "explorer.exe",
Arguments = "",
UseShellExecute = true,
CreateNoWindow = true
}
};
proc.Start();
但它只会启动一个新的浏览器 window,而不是 windows gui。有人可以帮我杀死 win gui 并用一些代码重新启动它吗?
您可以使用以下方法按名称获取进程:
var explorerProcesses = Process.GetProcessesByName("explorer");
然后你就可以循环杀掉他们了:
foreach(var process in explorerProcesses)
{
process.Kill()
}
您的程序可能需要 运行 作为管理员才能杀死资源管理器,我不确定。
我终于找到了解决方案:通过获取进程并使用 Kill() 仅重新启动 gui 来终止 explorer.exe。要完全关闭它,请使用
var proc = new Process
{
StartInfo = new ProcessStartInfo
{
FileName = "taskkill.exe",
Arguments = "/F /IM explorer.exe",
UseShellExecute = true,
CreateNoWindow = true
}
};
proc.Start();
我想要做的是终止 explorer.exe 主进程(这将导致以编程方式终止 Windows gui,然后再次打开 gui。我可以通过手动终止和然后通过 taskmanager 启动进程,但我无法弄清楚如何从 wpf 可视化 C# 程序中终止主资源管理器进程。此外,我尝试从 taskmanager 中终止它,然后通过以下方式再次启动 windows gui:
var proc = new Process
{
StartInfo = new ProcessStartInfo
{
FileName = "explorer.exe",
Arguments = "",
UseShellExecute = true,
CreateNoWindow = true
}
};
proc.Start();
但它只会启动一个新的浏览器 window,而不是 windows gui。有人可以帮我杀死 win gui 并用一些代码重新启动它吗?
您可以使用以下方法按名称获取进程:
var explorerProcesses = Process.GetProcessesByName("explorer");
然后你就可以循环杀掉他们了:
foreach(var process in explorerProcesses)
{
process.Kill()
}
您的程序可能需要 运行 作为管理员才能杀死资源管理器,我不确定。
我终于找到了解决方案:通过获取进程并使用 Kill() 仅重新启动 gui 来终止 explorer.exe。要完全关闭它,请使用
var proc = new Process
{
StartInfo = new ProcessStartInfo
{
FileName = "taskkill.exe",
Arguments = "/F /IM explorer.exe",
UseShellExecute = true,
CreateNoWindow = true
}
};
proc.Start();