-1

因为我正在执行某些任务,如果控制面板打开,则需要将其关闭。杀死资源管理器不是我正在寻找的解决方案,因为它也会关闭文件资源管理器。我需要一个可以跨不同系统语言工作的通用解决方案。如果解决方案是 ac# 代码,将会有所帮助。

我已经尝试关闭控制面板window.close()如果系统语言是英语(我无法比较title=="Control panel",因为如果系统语言是德语,那么控制面板被称为不同的东西),就像我正在做的那样window.title == "Control Panel"。这不是解决方案。我需要一些方法来关闭它,这将适用于所有系统。

4

2 回答 2

0

尝试使用 shell 运行命令行,例如:

taskkill control.exe
于 2020-03-21T19:17:03.893 回答
-1

你可能需要做一个小魔法来做到这一点。

您可能需要先检查系统语言:

CultureInfo.CurrentCulture

并在集合中保留与所有(或最可能的)语言中的“控制面板”匹配的字符串列表,然后对匹配语言的窗口标题进行比较。

至于真正关闭控制面板一旦你有比赛,因为控制面板实际上是 Explorer.exe 的一部分,杀死它的进程我会产生不良后果。但是,(对用户来说可能有点难看)如果你SendKeys相当于Alt + F4那个窗口,它只会关闭那个窗口。

这只是一个想法;WM_CLOSE可能会也可能不会,而不是SendKeys想法。

于 2019-08-29T17:07:19.940 回答