Thomas Nelson wrote: > from subprocess import Popen > from time import sleep > import win32api > war3game = Popen(["C:\Program Files\Warcraft III\Frozen Throne.exe"]) > sleep(30) > print "slept for 30" > print win32api.TerminateProcess(int(war3game._handle),-1) > #print > ctypes.windll.kernel32.TerminateProcess(int(war3game._handle),-1) > print "terminated process" > > Here's the output: > slept for 30 > Traceback (most recent call last): > File "C:\Python24\warcraft\runwar3.py", line 7, in ? > print win32api.TerminateProcess(int(war3game._handle),-1) > error: (5, 'TerminateProcess', 'Access is denied.') > > I'm logged in as adminstrator. Does anyone know how to fix this > problem?
There's nothing obvious. I assume you got your info from here? http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/347462 Just for completeness, have you tried the pid-based technique shown there? I've no idea why it should work if this one doesn't but... (I have a slight suspicion that the fact that it opens the process with a "for-termination" flag might help). Failing that, you can see if WMI can do it (although I assume that, under the covers, WMI just calls TerminateProcess): http://timgolden.me.uk/python/wmi_cookbook.html#create_destroy_notepad I suppose you might have to adjust your token privs to include, say the Debug priv. This is designed to let you take control of any process (and terminate it, or whatever). If it looks like you need to do that, post back and I -- or someone else -- can try to run up an example. TJG -- http://mail.python.org/mailman/listinfo/python-list