Replaced WMI process enumeration with the EnumProcesses API call. (Shorter, faster, does not depend on pythoncom.)
This commit is contained in:
parent
d9f1210fe7
commit
8a72187998
|
@ -62,13 +62,8 @@ class Daemon(object):
|
||||||
|
|
||||||
def process_running(pid):
|
def process_running(pid):
|
||||||
if deluge.common.windows_check():
|
if deluge.common.windows_check():
|
||||||
# Do some fancy WMI junk to see if the PID exists in Windows
|
import win32process
|
||||||
from win32com.client import GetObject
|
return pid in win32process.EnumProcesses()
|
||||||
def get_proclist():
|
|
||||||
WMI = GetObject('winmgmts:')
|
|
||||||
processes = WMI.InstancesOf('Win32_Process')
|
|
||||||
return [process.Properties_('ProcessID').Value for process in processes]
|
|
||||||
return pid in get_proclist()
|
|
||||||
else:
|
else:
|
||||||
# We can just use os.kill on UNIX to test if the process is running
|
# We can just use os.kill on UNIX to test if the process is running
|
||||||
try:
|
try:
|
||||||
|
|
Loading…
Reference in New Issue