1

所以我在 python3.6 中构建了一个非常简单的服务。客户希望它在 windows 上运行,所以我使用 win32serviceutil 包来制作 windows 服务。我使用 pyinstaller 安装和打包,到目前为止一切正常。

我遇到的问题是安装、启动和调试之间的路径不同。安装和调试时,路径与我运行命令的路径相同。但是,启动服务时,路径是 C:/windows/system32

该服务需要启动另一个 .exe,因此拥有捆绑应用程序的绝对路径非常重要。我通过在安装时写入注册表路径并在启动服务时读取来解决这个问题。我使用winreg库执行此操作。它在调试模式下运行良好,但是在正常启动服务时似乎服务在另一个用户下运行,并且无法以某种方式加载。我收到错误 1053:服务在运行时没有及时响应启动或控制请求。导入 winreg 库没问题,但使用时它会崩溃而没有错误。我试图捕捉错误并打印,但在命令提示符或事件查看器上什么也没有。

任何帮助表示赞赏!

4

0 回答 0