Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Robotframework Robot framework AutoIt库未显示错误,但未启动应用程序_Robotframework_Autoit - Fatal编程技术网

Robotframework Robot framework AutoIt库未显示错误,但未启动应用程序

Robotframework Robot framework AutoIt库未显示错误,但未启动应用程序,robotframework,autoit,Robotframework,Autoit,即使给出了整个路径,运行命令也无法打开记事本或写字板等应用程序。计算器正在打开,但没有打开其他程序。AutoIt已安装并在我的系统中正常工作。计算器程序也运行良好,但似乎并没有其他应用程序启动。 即使应用程序未启动,所有运行都将测试显示为通过 我已经尝试了完整路径,我尝试了另一个答案 似乎Run方法隐式应用了SW\u HIDE 标志参数,在AutoItX中 在AutoIt中,如果使用Default关键字作为标志参数 在Run函数中,它使用 SW\u HIDE。 SW\u HIDE也是AutoIt

即使给出了整个路径,运行命令也无法打开记事本或写字板等应用程序。计算器正在打开,但没有打开其他程序。AutoIt已安装并在我的系统中正常工作。计算器程序也运行良好,但似乎并没有其他应用程序启动。 即使应用程序未启动,所有运行都将测试显示为通过

我已经尝试了完整路径,我尝试了另一个答案


似乎
Run
方法隐式应用了
SW\u HIDE
标志
参数,在AutoItX

AutoIt中,如果使用
Default
关键字作为标志参数 在
Run
函数中,它使用
SW\u HIDE
SW\u HIDE
也是AutoItX中的默认设置,如我的测试所示

因此,结果似乎是
calc.exe
忽略了
SW\u HIDE
启动时标记,而其他程序(如
notepad.exe
)可能适用 信息技术程序确实会启动,您可以在任务管理器中看到 它们正在运行,但窗口可能处于隐藏状态

这是使用Python X64进程打开的测试文件:

*** Settings ***
Library   AutoItLibrary

*** Variables ***
${SW_MAXIMIZE}      3
${SW_SHOW}          5
${SW_MINIMIZE}      6
${SW_SHOWDEFAULT}  10

*** Test Cases ***
Run_Program
    Run   notepad.exe  ${EMPTY}  ${SW_SHOW}
    Wait For Active Window   Untitled - Notepad
    Send   Welcome To AutoIt!   1
记事本的窗口确实显示

我不确定常量是否已经可用,所以我添加了一些 用作
运行
标志
参数的变量。所有的 在测试启动窗口状态时,变量测试正常

请注意,可能会影响x64操作系统上的路径。 例如的32位进程可以重定向到
SysWOW64
目录, 而不是
System32
目录。在x64操作系统上,
SnippingTool.exe
位于要访问的x64进程的
System32
,但不在
SysWOW64
用于重定向的x86进程
SysNative
是一个可以避免 x86进程的重定向

我不知道
wordpad.exe
在OS
PATH
变量中,因此您可能需要 使用完整路径进行访问
Run
,参数仅为
wordpad.exe

测试失败。

如果您运行的是带有x86进程的x64系统,则可能找不到
SnippingTool.exe
,因为它只存在于x64路径中。如果
notepad.exe
未运行,则会出现另一个问题,因为
notepad.exe
位于x86路径和x64路径中。@michael_heath:记事本和剪切工具均未运行。除了计算之外,没有别的了谢谢你,迈克尔!成功了!文件中没有提到任何关于国旗的内容。然而,我现在有另一个问题在发送。欢迎使用Autoit!不会被发送到记事本窗口,但我会将其作为pycharm的输出。为什么呢?同时传递的关键字在使用
Send
之前,您需要等待窗口出现。查看
C:\RobotFramework\Extensions\AutoItLibrary\AutoItLibrary.html中的关键字
等待活动窗口
*** Settings ***
Library   AutoItLibrary

*** Variables ***
${SW_MAXIMIZE}      3
${SW_SHOW}          5
${SW_MINIMIZE}      6
${SW_SHOWDEFAULT}  10

*** Test Cases ***
Run_Program
    Run   notepad.exe  ${EMPTY}  ${SW_SHOW}
    Wait For Active Window   Untitled - Notepad
    Send   Welcome To AutoIt!   1