我用wxPython和cefPython构建了一个应用程序。现在我正在构建一个更新程序来更新我的软件。
流程如下:
我认为问题出现在第4点,因为我认为该过程已经关闭,所以现在其他步骤都没有发生。
我应该如何做到这一点,以便更新程序(我从主程序导入和调用)也不会关闭,如果这是问题。
以下是一些代码:
import updater (updater.py)
class MyApp(wx.App):
timer = None
timerID = 1
def OnInit(self):
if not USE_EVT_IDLE:
print("Using TIMER to execute the CEF message loop work")
self.CreateTimer()
global frame
frame = MainFrame()
self.SetTopWindow(frame)
frame.Show(False)
**thread.start_new_thread(checkForUpdate, ()) --- This is where im calling the update function**
return True
def checkForUpdate():
print("Checking for update: %s" % time.ctime())
updater.callAPI()
threading.Timer(120, checkForUpdate).start()
由于
答案 0 :(得分:1)
由于您使用的是wxPython,为什么不使用它的内置更新程序模块?我认为它们是在2.8的最新版本中添加的,它绝对包含在2.9中。他们基本上采用了Esky项目并将其包装在wxPython帮助程序中,以使其更易于使用。我在这里写了一个关于这个主题的教程:
你可以在这里阅读esky:
我也听说过“goodasnew”项目,但我还没有尝试过: