Windows:如何打开一个EXE,让它运行,然后在它关闭后触发另一个脚本。
背景。 因此,我的一个团队已经建立了一个桌面应用程序安装程序和所有。它运行并打开不同的进程,这取决于它当时使用的功能 这个问题。 当我们打开(我们称之为“Jim.exe”)时,它运行平稳。Jim的不同部分将打开额外的Jim.exe,具体取决于它使用的部分。这不是问题所在 问题是,当您退出应用程序时,并非所有这些附加进程都会关闭。诚然,这是开发过程中的一个疏忽,但设计该过程的人不再在项目中工作 最初尝试的解决方案。 我的任务是找到一种方法来关闭那些流氓进程。我确实得到了一些帮助,使用VBS搜索和销毁这些进程。使用以下命令: Kill.vbs:Windows:如何打开一个EXE,让它运行,然后在它关闭后触发另一个脚本。,windows,batch-file,vbscript,cmd,exe,Windows,Batch File,Vbscript,Cmd,Exe,背景。 因此,我的一个团队已经建立了一个桌面应用程序安装程序和所有。它运行并打开不同的进程,这取决于它当时使用的功能 这个问题。 当我们打开(我们称之为“Jim.exe”)时,它运行平稳。Jim的不同部分将打开额外的Jim.exe,具体取决于它使用的部分。这不是问题所在 问题是,当您退出应用程序时,并非所有这些附加进程都会关闭。诚然,这是开发过程中的一个疏忽,但设计该过程的人不再在项目中工作 最初尝试的解决方案。 我的任务是找到一种方法来关闭那些流氓进程。我确实得到了一些帮助,使用VBS搜索和销
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery _
("SELECT * FROM Win32_Process WHERE Name = 'Jim.exe'")
For Each objProcess in colProcessList
objProcess.Terminate()
Next
但是,我找不到将其附加到任何类型的关闭事件的方法,因此我想出了一个.bat来启动exe并包含它,直到它关闭,从而触发kill.vbs:
Box.bat(Box.exe)
我将上面的.Bat转换为自己的exe,因此用户可以使用此“Box.exe”的快捷方式将其转换为1。打开实际的exe。2.等待应用程序关闭3。触发器Kill.vbs
工作完美!但是我不能用它。。。
Box.exe立即被AV标记并被吃掉。。。你大概能猜出原因
我想问你一个问题。
是否有其他方法来安排这样AV就不会吃我的.Exe了?或者一种不同的脚本编写方法,一旦应用程序关闭,它将关闭恶意进程。我确信有多种方法可以解决这个问题,但我对此一无所知。它不必是vbs或.bat,只要我能分辨出它的工作原理,任何脚本或代码都可以
进球。
一种杀死应用程序未关闭的恶意进程的方法
p、 我使用Bat2Exe将Box.bat转换为Box.exe
我真的希望这是足够清楚,以了解让我知道,如果你需要更多的信息。此外,它将面向用户,因此在启动时,我不能让终端窗口打开,也不能让AV隔离它。如果转换的批处理文件有效,为什么不能在不转换的情况下使用批处理文件?我试图避免用户点击桌面上的批处理文件。我可以很容易地阻止航站楼的窗户打开。Webroot和Windows defender似乎也不喜欢批处理文件。它将它标记为不同的东西,但我不能让用户真正需要允许他们的AV让它离开。奇怪的是,它根本没有标记.vbs。我希望有一种方法可以对exe进行签名或在某个地方注册,这样它就不会被标记,但我也没有太多的运气来搜索它。exe被标记为特洛伊木马,而.bat被标记为.heur。我宁愿它保持原样,因为它确实有效,但我在这方面被拒绝了。好消息!实际上,我们能够保持原样。签署安装程序似乎已经转移到Box.exe,防止它被AVP吃掉。请将您找到的解决方案作为答案而不是评论发布;因此,您可以接受它,并且问题不再出现在so数据库中…如果转换的批处理文件有效,为什么您不能直接使用批处理文件而不进行转换?我试图避免用户单击桌面上的批处理文件。我可以很容易地阻止航站楼的窗户打开。Webroot和Windows defender似乎也不喜欢批处理文件。它将它标记为不同的东西,但我不能让用户真正需要允许他们的AV让它离开。奇怪的是,它根本没有标记.vbs。我希望有一种方法可以对exe进行签名或在某个地方注册,这样它就不会被标记,但我也没有太多的运气来搜索它。exe被标记为特洛伊木马,而.bat被标记为.heur。我宁愿它保持原样,因为它确实有效,但我在这方面被拒绝了。好消息!实际上,我们能够保持原样。签署安装程序似乎已经转移到Box.exe,防止它被AVP吃掉。请将您找到的解决方案作为答案而不是评论发布;所以你可以接受它,问题不再出现在so数据库中。。。
"C:\Program Files\Jim Folder\Jim.exe"
Call "C:\Program Files\Jim Folder\Kill.vbs"