Я использую bottle, вместо традиционного ГУИ интерфейса и перевожу всё это в py2exe.
Мне нужно, чтоб при выходе из браузера убивался процесс который вызывает екзешник py2exe ( он у меня называется first.exe)
Для этого использую вот такую ф-цию:
import win32api
import win32pdhutil
import win32con
def killProcName(procname):
"""Kill a running process by name. Kills first process with the given name."""
try:
win32pdhutil.GetPerformanceAttributes("Process", "ID Process", procname)
except:
pass
pids = win32pdhutil.FindPerformanceAttributesByName(procname)
# If _my_ pid in there, remove it!
try:
pids.remove(win32api.GetCurrentProcessId())
except ValueError:
pass
handle = win32api.OpenProcess(win32con.PROCESS_TERMINATE, 0, pids[0])
win32api.TerminateProcess(handle, 0)
win32api.CloseHandle(handle)
print "Kill"
@route('/onunload', method='POST')
def on_unload():
#sys.exit(-1)
kill_process.killProcName('first')
Как убить процесс который я запустил с помощью py2exe?
Буду рад всем пинкам в нужную сторону.
Спасибо!