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

Get a list of all applications that SikuliX currently sees

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

我已经能够让代码为 Chrome、SQL 服务器和我当时拥有的其他随机应用程序工作 运行。当我有不止一种类型的应用程序时,问题似乎就出现了 运行。如果我的应用程序名为 "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 在运行时可以检测到的每个应用程序的列表.有没有人试过这样的事情?我搜索了整个文档,但找不到任何允许进行此类查询的功能。

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

简而言之,SikuliX使用Windows中的'tasklist'命令来抓取可用应用程序列表。