任务调度程序不运行任务,cmd提示符运行后台



我正在尝试运行一个特定的程序,该程序使用os.system从任务调度程序运行cmd命令。

os.system('"C:\Program Files\BlueStacks_nxt\HD-Player.exe" --instance Nougat32')
os.system('cmd /c "adb start-server"')

当我从IDE运行时,代码工作完美。但是,每当我尝试运行py文件或导出的exe文件时,该程序无法启动BlueStack或adb服务器。当我直接运行exe文件时,exe文件也可以正常工作。

我首先认为可能是一些错误,并使用try/catch短语来记录异常,但没有引发异常。

在这里我找到了一种在任务运行时显示cmd提示符的方法。当我将设置更改为"仅当用户登录时运行"时,弹出cmd提示符,os.system工作。

所以我的问题是为什么os.system不工作时,cmd提示符从后台运行,但当cmd提示符显示?我能够通过任务管理器检查cmd是否在后台正常运行,并且两次特权都设置为最高。

有可能os.system确实工作,但由于某种原因进程未能运行。

你能试着把终端的输出保存到一个文件中,看看是否有输出吗?要做到这一点,你可以使用subprocess.Popen命令,它会给你命令的粗壮和标准错误。

最新更新