获取SikuliX目前看到的所有应用程序的列表

时间:2018-02-02 22:40:33

标签: winforms sikuli

我有一个似乎没有响应SikuliX(v 1.1.2).focus()的应用程序。它是我运行的三个自定义WinForms应用程序之一。我发现this link与我的确切情况有关,但这些建议没有帮助。

我能够让代码适用于我当时运行的Chrome,SQL Server和其他随机应用程序。当我运行多种类型的应用程序时,问题似乎就出现了。如果我的应用程序名为“Version Launcher”,“Device 1”和“Alternative”,我可以切换到“Version Launcher”,但找不到“Device 1”和“Alternative”。

class myDevice:

    def startApp(self):
        #my_app = App("Chrome") # works
        #my_app = App("Visual Studio") # works
        #my_app = App("Version Selector") # works
        #my_app = App("Device 1") # does NOT work
        my_app = App("Alternative") # does NOT work

        my_app.focus(); wait(1)

my_device = myDevice()
my_device.startApp()

为了排除错误的名称(可能在某种程度上,应用程序并未真正命名为“Device 1”),我想构建一个Sikulix可以在运行时检测到的每个应用程序的列表。有没有人试过这样的事情?我搜索了整个文档,找不到任何允许这种查询的功能。

1 个答案:

答案 0 :(得分:0)

SikuliX项目的维护者Raimund Hocke在启动板上回答了我的问题。 https://answers.launchpad.net/sikuli/+question/664004

简而言之,SikuliX使用'任务列表' Windows中的命令用于获取可用应用程序列表。