首页 > 解决方案 > 使用 nssm 时,当新版本到达时 Pyupdater 循环

问题描述

我的程序包括以下步骤:

这是更新检查器的代码:

client = Client(ClientConfig, refresh=True)
appUpdate = client.update_check(ClientConfig.APP_NAME,
                                ClientConfig.APP_VERSION,
                                channel='stable')
if appUpdate:
    if hasattr(sys, "frozen"):
        downloaded = appUpdate.download()
        if downloaded:
            status = UpdateStatus.EXTRACTING_UPDATE_AND_RESTARTING
            print('Extracting update and restarting...')
            time.sleep(10)
            appUpdate.extract_restart()
        else:
            status = UpdateStatus.UPDATE_DOWNLOAD_FAILED
    else:
        status = UpdateStatus.UPDATE_AVAILABLE_BUT_APP_NOT_FROZEN
else:
    status = UpdateStatus.NO_AVAILABLE_UPDATES
print(UPDATE_STATUS_STR[status])

此外,我正在尝试使用nssm将该程序作为 Windows 服务运行。

当新版本的程序上传到 s3 时,pyupdater 会尝试更新程序,但它永远不会成功,导致主程序永远不会启动。但是,如果我不使用nssm,它就可以正常工作。

链接到日志

标签: windowspyinstallernssm

解决方案


推荐阅读