Answers:
AutoIt是我最好的建议。它具有轮询窗口标题或文本(隐藏窗口和可见窗口)和进程名称(WinExists(),ProcessExists())的能力,并具有按进程或窗口关闭应用程序的选项(WinKill(),WinClose(), ProcessClose())。由于它是一种脚本语言,因此可以对其进行配置,以完全过滤出您想要的内容,但是与其他应用相比,它的学习曲线可能更高。
注意:这不会阻止它们运行,但是一旦它们尝试运行,它将立即杀死它们。
这是一些示例代码:
Opt("WinTitleMatchMode", 2)
While 1
If ProcessExists("notepad.exe") Then
ProcessClose("notepad.exe")
EndIf
If WinExists("Paint","") = 1 Then
WinClose("Paint","")
EndIf
Sleep(100)
WEnd
这将关闭标题和notepad.exe进程一开始就带有标题“ Paint”的任何窗口。
如果没有第三方软件(我真的不能推荐任何第三方软件),那么使用Windows的内置功能就很难做到这一点。您可以获得的最接近的版本是使用Windows的专业版(专业版或更高版本),并使用组策略限制可以运行的应用程序列表。
就是说,这是一个包含列表,而不是排除列表。
但是,这些应用程序很可能仅通过重命名自身或类似名称就可以绕过您的安全性。
由于此时应用程序已经可以运行,因此无法通过应用程序标题进行保护-除非您事先进行某种反编译/资源查找-但是,这很可能效率低下,非常缓慢并且并不总是能正常工作(在混淆的情况下)。
如果您想继续使用允许列表,请参阅以下XP指南,Windows Vista / 7与Windows XP / Windows Vista / 7非常相似,但是如果您需要帮助,请告诉我,我将为您编写指南。