Может быть кто подскажет как получить
список запущенных программ в питоне на WINDOWS?
На мобильном питоне это appswitch.application_list(0).
Модуля appswitch на компе нет, а в интернете че-то не нахожу.
Очень расчитываю на помощ. :)
lioshaПочитать что-нибудь по winapi :)
А без сторонних модулей получить список запущенных программ никак нельзя?
from ctypes import *
CreateToolhelp32Snapshot = windll.kernel32.CreateToolhelp32Snapshot
Process32First = windll.kernel32.Process32First
Process32Next = windll.kernel32.Process32Next
TH32CS_SNAPPROCESS = 0x02L
class PROCESSENTRY32 (Structure) :
_fields_ = [("dwSize", c_ulong),
("cntUsage", c_ulong),
("th32ProcessID", c_ulong),
("th32DefaultHeapID", c_ulong),
("th32ModuleID", c_ulong),
("cntThreads", c_ulong),
("th32ParentProcessID", c_ulong),
("pcPriClassBase", c_ulong),
("dwFlags", c_ulong),
("szexeFile", c_char * 260)
]
def GetProcessList () :
pe32 = PROCESSENTRY32()
pe32.dwSize = sizeof(PROCESSENTRY32)
result = []
snapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0)
ok = Process32First(snapshot, byref(pe32))
while ok :
# выбираем поля, которые считаем нужными
result.append((pe32.szexeFile, pe32.th32ProcessID, pe32.th32ParentProcessID, pe32.cntThreads))
ok = Process32Next(snapshot, byref(pe32))
win32file.CloseHandle(snapshot)
return result
import subprocess
proc_list = subprocess.Popen('ps -A -o comm', shell=True, stdout=subprocess.PIPE).communicate()[0].split('\n')[1:]