pywinauto 未检测到子窗口

2024-01-07

我正在使用最新版本(迄今为止)的 pywinauto;还使用 PyInspect (uia) 来识别控件。

我正在自动化应用程序上的控件,该过程的一部分是检查触发窗口从菜单选择(如“编辑”->“设置”)中出现后弹出的窗口上的几个框。

问题是,pywinauto 似乎无法检测到新窗口。我看到成功打开;并可以在 PyInspect 中将窗口和元素视为应用程序的子(子?)窗口。

我尝试过等待方法,认为自动化发生得太快 - 但无济于事。就像是:

mysettings = app['app-name'].child_window(title_re="my target settings window", class_name="#32770").wait('exists', timeout=10)

这只会超时。如果我打印控件标识符,则永远不会包含“我的目标设置窗口”。

app['app-name'].print_control_identifiers()

我还尝试了在 top_window 上 set_focus ..但这也不起作用。我的结论是 pywinauto 无法检测到它的存在。对此有什么想法吗?


我能够解决 pywinauto 检测子窗口的问题以及紧随其后的问题:访问子窗口。

首先,我能够通过在应用程序定义中定义 backend='uia' 来让 pywinauto 检测新窗口,如下所示:

app = application.Application(backend='uia')

我以前刚刚有:

app = application.Application()

我的下一个问题是访问子窗口上的元素。正如我所预料的那样,我无法直接访问该窗口:

app['my app']['child window']['textbox'].set_edit_text("hello world")

相反,这段代码有效:

app['my app'].child_window(title='child window name').Edit1.set_edit_text("hello world")

虽然我已经解决了我的问题,但我注意到在定义 backend='uia' 后,该过程现在的执行速度比以前慢得多。如果任何偶然发现此问题的人在这方面有任何反馈(或优化我上面的努力),请贡献。

Thanks

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

pywinauto 未检测到子窗口 的相关文章

随机推荐

  • 基本的 javascript 所见即所得编辑器

    我可以获得有关如何使用文本区域制作所见即所得编辑器的解释吗 我需要它做的就是解析基本的 html 标签 如粗体 斜体 下划线等 它不需要任何插入它的按钮 我只想在解析的文本区域标签内有一个默认文本html Example
  • 我怎样才能有启用/禁用按钮附近的条目的功能?

    import tkinter as tk class App tk Frame def init self super init self pack self buttons self entries for n row in range
  • WiX 包含与片段

    WiX 包括 wxi文件 和 WiX 片段 wxs文件 每个的用例是什么 Which should被使用 为什么 文件扩展名只是为了方便 文件的内容才是真正重要的 这种区别使得管理实际安装 wxs 文件 和创建安装所需的属性 wxi 文件
  • 使用 PHP 将图像中的一种颜色替换为另一种颜色

    是的 我知道 stackoverflow 上有相关的问题 但它们并不完全符合我的需要 我正在尝试用另一种颜色替换图像的颜色 在下面的代码中 我将 255 0 255 替换为 0 192 239 下面的代码可以工作 但不能完美地替换粉色 25
  • C++ 与 Rust 接口 - 返回 CString 恐慌

    我正在尝试从 C 调用一些用 Rust 编写的函数 到目前为止 我已经相当成功 但我仍然有一个小问题CString运行时相关的恐慌 功能hello应该接受一个输入字符串 将其与其他字符串连接起来并返回结果 这是我的fun rs use st
  • 是否可以用 C# 编写 Visual Studio Code 扩展

    是否可以写视觉工作室代码C 中的扩展而不是 TypeScript 中的扩展 我需要这个 因为我想调用一些 NET DLL 最简洁的答案是不 长答案涉及本机节点模块的组合 在您的扩展中预先构建和打包它们 并将您的扩展限制为仅适用于 Windo
  • 判断目录是否可写

    Python 中确定执行脚本的用户是否可写目录的最佳方法是什么 由于这可能涉及使用 os 模块 我应该提到我正在 nix 环境下运行它 虽然 Christophe 建议的是一个更 Pythonic 的解决方案 但 os 模块确实有os ac
  • 用纯 javascript 编写的用于嵌入式环境的 XML 解析器 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个可以在无法访问的 javascript 环境中运行的解析器document DOMParser或任何其他浏览器扩展 java
  • 自定义 cassandra / cqlsh time_format

    System CentOS 6 7 x86 64 cqlsh 5 0 1 卡桑德拉 2 2 1 CQL 规范 3 3 0 我在插入 复制 csv 文件 格式为 d m Y H M S 的时间戳字段时遇到问题 默认情况下不支持这种格式 因此我
  • 如何从curl或github cli创建webhook

    如何从curl 或github cli 创建webhook 这个文档 没有多大帮助 https docs github com en rest reference repos create a repository webhook code
  • 更改 CAShapeLayer 而不使用动画

    我想设置strokeEnd的财产CAShapeLayer没有默认动画 根本没有动画 我环顾四周试图找到如何做到这一点 但一切似乎都是关于如何为属性设置动画 在核心动画术语中 动画的更通用术语是 动作 例如 您可以看到CAAnimation符
  • 如何将两个数字相加?

    我写了一个 JavaScript 计算器 但是假设当我给出第一个数字时2第二个数字为3 结果显示23 但我想将这两个数字相加 谁能帮帮我吗 当我尝试减去这两个数字时也会发生这种情况 为什么这不起作用 var cal prompt Pleas
  • 如何在 ionic 框架 + cordova 中显示 local:// 图像?

    有谁知道如何使用 Ionic http ionicframework com docs http ionicframework com docs 当应用程序在设备上运行时 我当前收到此错误 GET unsafe local img thum
  • 根据日期更改图像源

    我想做的是根据月份和日期更改登陆页面图像 问题是当我实现此代码时出现错误 代码如下 function kblogo var d new Date var Today d getDate var Month d getMonth var lo
  • 群组成员可登录 Facebook

    我是 Facebook 上一个小组的管理员 该小组大约有 40 50 名成员 现在我正在为该组构建一个网页 该网页将授权用户使用 Facebook 登录 我正在使用 Laravel SammyK 的LaravelFacebookSDK ht
  • 如何使用预处理器指令检查操作系统?

    我需要我的代码根据编译它的操作系统来执行不同的操作 我正在寻找这样的东西 ifdef OSisWindows do Windows specific stuff else do Unix specific stuff endif 有没有办法
  • 如何将字符串渲染为自定义 React 组件?

    所以我有这个代码 ReactDom render
  • 重定向 URI 中“postmessage”的用途是什么?

    据我所知 在 Google 的身份验证代码流程中 redirect uri 需要为 postmessage 而不是 URI 谁能解释一下这个值具体是做什么的 我最好的解释是 它告诉浏览器返回到帖子的来源 但我没有文档来支持这个假设 关于这个
  • 将 EXE 输出写入批处理文件

    我有一个 EXE 其输出值为 0 1 EXE 将通过批处理文件调用 我想要批处理文件运行 EXE 并写入获得的输出 这怎么可能 任何帮助 将不胜感激 我假设您想要捕获 EXECUTIVE 的输出并处理该值 而不是仅仅打印该值 以下是如何捕获
  • pywinauto 未检测到子窗口

    我正在使用最新版本 迄今为止 的 pywinauto 还使用 PyInspect uia 来识别控件 我正在自动化应用程序上的控件 该过程的一部分是检查触发窗口从菜单选择 如 编辑 gt 设置 中出现后弹出的窗口上的几个框 问题是 pywi