from subprocess import Popen
from win32com.client import GetObject
from string import replace
def isRunning(app):
WMI = GetObject('winmgmts:')
app = replace(app,"\\","\\\\")
return(len(WMI.ExecQuery('select * from Win32_Process where ExecutablePath="%s"'%app))!=0)
def execAll(appList):
for app in appList:
if not isRunning(app):
Popen(app)
def killAll(appList):
WMI = GetObject('winmgmts:')
for app in appList:
app = replace(app,"\\","\\\\")
processes = WMI.ExecQuery('select * from Win32_Process where ExecutablePath="%s"'%app)
for process in processes:
try:
process.Terminate()
except TypeError:
raise
def main():
myApps = ["C:\\Program Files\\Pidgin\\pidgin.exe",
"C:\\Program Files\\Opera 10\\opera.exe",
"C:\\Program Files\\Vuze\\Azureus.exe",
"C:\\Program Files\\Winamp\\winamp.exe"]
unwantedApps = ["C:\\WINDOWS\\system32\\notepad.exe"]
execAll(myApps)
killAll(unwantedApps)
if __name__ == "__main__":
main()