python进程杀除及子程序调用

1. 在python调用子程序进程时,有几种方式:
 os.system(command)
 os..execl(path)(查看帮助文档,里面有一系列的函数族,关于调用子程序的)
 第一种情况下,调用子程序,父进程不会消失掉,当子进程结束时,会返回到父进程继续运行。
 第二种情况下,调用子程序,父进程立刻结束,当子进程结束时整个进程结束。
当能还有其他的方式调用子程序:
Win32api.ShellExecute(hwnd,op,file,parames,dir,bshow)
例:win32api.shellExecute(0,”open”,path,””,””,)
建议调用python自带的内建模型,尽量做到系统无关性。

2. 在wxpython中如何结束主进程
在运行wxpython程序时,有时要非正常的结束程序,但实际上程序并没有结束。下面有两种退出程序的方式,以及一种非正常的退出方式:
wx.GetApp().ExitMainLoop()
wx.Exit()
如果需要中途退出程序的话可以使用上面两种方式(建议第一中)

还有一种非正常的退出方式
exit(1)
但这种形式,打包程序会出错。(不推荐使用这种方式)
[python] view plain copy
  1. #process kill.py  
  2. #www.hbxcyz.cn  
  3. class Check_Version():  
  4.     def Check_Version_function(self):  
  5.        self.keyname = '''''Software//Microsoft//Windows//CurrentVersion 
  6.        //Uninstall//JoinAir'''  
  7.        self.key_uninstall = win32api.RegOpenKey(win32con.HKEY_LOCAL_MACHINE  
  8.                                                 ,self.keyname,0,win32con.KEY_ALL_ACCESS)  
  9.        self.filename_uninstall = win32api.RegQueryValueEx(self.key_uninstall,  
  10.                                                           'UninstallString')  
  11.        win32api.RegCloseKey(self.key_uninstall)  
  12.        self.Check_Compare()  
  13.        if self.flag ==1:  
  14.           self.MyDialog = Check_Dialog()  
  15.           if self.MyDialog.ShowModal()== wx.ID_OK:  
  16.               #运行卸载程序  
  17.               print self.filename_uninstall  
  18.               os.execl(self.filename_uninstall[0])  
  19.               wx.GetApp().ExitMainLoop()  
  20.           else:  
  21.               wx.GetApp().ExitMainLoop()  
  22.        else:  
  23.           self.MyDialog = Check_Dialog()  
  24.           if self.MyDialog.ShowModal()==wx.ID_OK:  
  25.              #运行卸载程序  
  26.              os.execl(self.filename_uninstall[0])  
  27.              wx.GetApp().ExitMainLoop()  
  28.           else:  
  29.              wx.GetApp().ExitMainLoop()    

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值