如何处理 pywinauto 或 pyautoit 中的海拔错误?

How to handle elevation error in pywinauto or pyautoit?

我想在 windows OS 8.1 中打开一个“.exe”扩展文件。它需要用户帐户控制才能打开文件。是否可以始终允许 python 脚本在没有 UAC 的情况下打开 exe 文件。

在 pywinauto 中,出现以下错误:--

  File "C:\Python27\lib\site-packages\pywinauto\application.py", line 997, in start
    raise AppStartError(message)
pywinauto.application.AppStartError: Could not create the process "testfile.exe"
Error returned by CreateProcess: (740, 'CreateProcess', 'The requested operation requires elevation.')

在 OS 设置中手动禁用 UAC 是唯一的方法。或 运行 脚本作为管理员手动确认。出于安全原因,UAC 确认对话框不可自动执行。我已经测试过了。

也许可以将 Task Scheduler 触发器设置为 运行 作为管理员,唯一确认触发器保存。

[编辑]: 如果手动禁用 UAC,有一种方法可以重新运行 脚本作为管理员:

  • Request UAC elevation from within a Python script?