Killing Win32 process

Qq
Jamie McLaughlin
SAIC
Office: 703-292-6307
Mobile: 571-263-2528

···

----- Original Message -----
From: anukul.singhal@gmail.com <anukul.singhal@gmail.com>
To: ruby-talk ML <ruby-talk@ruby-lang.org>
Sent: Tue Jun 03 05:46:19 2008
Subject: Killing Win32 process

Hi,

I tried the following code snippet to kill a Win32 process:

def killQTP
   wmi = WIN32OLE.connect("winmgmts://")
   processes = wmi.ExecQuery("select * from Win32_process")
   for process in processes do
      if process.Name.include? "QTPro.exe" then
         puts "Name: #{process.Name}"
         puts "Process ID: #{process.Pid}"
         puts process.Terminate
      elsif process.Name.include? "star.exe" then
         puts "Name: #{process.Name}"
         puts "Process ID: #{process.Pid}"
         puts process.Terminate
      end
   end
   puts "done killing QTP"
end

But the process is not getting killed when I execute the above and
simply gives "exit code: 0"

Can anyone help in case I am missing anything to execute the above code
or is there any other way of killing a Win32 process?

Thanks,
Anukul
--
Posted via http://www.ruby-forum.com/.