I want to shutdown QTP w开发者_开发知识库hich is invoked through Wscript.exe.
I used these three commands and it works perfectly fine.
TASKKILL /F /FI "USERNAME eq Ankita" /IM wscript.exe"
TASKKILL /F /im QTAutomationAgent.exe
TASKKILL /F /im QTPro.exe
You cannot create multiple instances of QuickTest Application on a single machine.
Even though you say CreateObject("QuickTest.Application")
10 times, all will be holding same instance of the application.
Closing the quickTest using API method described above is the absolute solution.
taskkill.exe /IM qtp.exe
Killing a process without giving it opportunity to close down properly is not fair.
Here is code sample which can close QTP using its API. It will bind to open QTP application and close it in a graceful manner.
'Create QuickTest.Application object'
Dim oQtpObject : Set oQtpObject = CreateObject("QuickTest.Application")
oQtpObject.Test.Close
'Clean up'
Set oQtpObject = Nothing ' Release the Application object
I haven't got QTP installed and cannot check how this code could be called. You could try calling it directly from QTP script code and if it doesn't work you can create an external script containing quoted code and call it from QTP.
Last time I checked, while running a spam box, I used a .bat file called: box_killer and this is the code: taskkill /f /im wscript.exe
Change that to something like rundll32.
精彩评论