AppStartError:CreateProcess:系统找不到指定的文件

时间:2018-03-12 21:23:31

标签: python sap pywinauto

使用pywinauto自动化SAP提取物。我发誓这个代码 - 从SWAPY中复制 - 昨天工作。

from pywinauto.application import Application

app = Application().Start(cmd_line = u"C:\\'Program Files (x86)'\\SAP\\FrontEnd\\SAPgui\\saplogon.exe")
window = app.Dialog
window.Wait('ready')
edit = window.Edit
edit.ClickInput()

这给了我以下错误:

  

错误:   追溯(最近的呼叫最后)   〜\应用程序数据\本地\连续\ Anaconda3 \ LIB \站点包\ pywinauto \ application.py   在开始时(self,cmd_line,timeout,retry_interval,create_new_console,   wait_for_idle,work_dir)       991 work_dir,#If None - 使用父级的起始目录。    - > 992 start_info)#STARTUPINFO结构。       993除了Exception为exc:

     

错误:(2,' CreateProcess','系统无法找到该文件   。指定&#39)

     

在处理上述异常期间,发生了另一个异常:

     

AppStartError Traceback(最近一次调用   最后)in()         1来自pywinauto.application import应用程序         2   ----> 3 app = Application()。开始(cmd_line = u" C:\'程序文件(x86)' \ SAP \ FrontEnd \ SAPgui \ saplogon.exe")         4 window = app.Dialog         5 window.Wait(' ready')

     

〜\应用程序数据\本地\连续\ Anaconda3 \ lib中\站点包\ pywinauto \ application.py   在开始时(self,cmd_line,timeout,retry_interval,create_new_console,   wait_for_idle,work_dir)       995 message =('无法创建流程"%s" \ n'       996' CreateProcess返回错误:%s')%(cmd_line,str(exc))    - > 997引发AppStartError(消息)       998       999 self.process = dw_process_id

     

AppStartError:无法创建进程" C:\'程序文件   (86)'' \ SAP \前端\ SAPGUI \ saplogon.exe"返回错误   CreateProcess:(2,' CreateProcess','系统找不到文件   。指定&#39)

我使用Python 3.6.4运行Win7 64位:: Anaconda自定义(64位)和pywingui版本222.我可以将命令剪切并粘贴到cmd窗口中,它启动应用程序就好了。

我改变了引号。我将字符串更改为raw并删除\\一个\我的phlummoxxed。

此外 - 昨天,当它工作了#34;时,点击740版SAP GUI中的元素是一个真正的挑战。是否有任何技巧可以克服他们如何混淆用户界面?

1 个答案:

答案 0 :(得分:2)

u"C:\\'Program Files (x86)'\\SAP\\FrontEnd\\SAPgui\\saplogon.exe"更改为r'C:\\Program Files (x86)\\SAP\\FrontEnd\\SAPgui\\saplogon.exe'解决了问题