gpt4 book ai didi

c# - 是否可以获取任何窗口的选定文本,包括非 UI 自动化元素?

转载 作者:行者123 更新时间:2023-11-30 18:01:30 25 4
gpt4 key购买 nike

是否可以获取任何窗口的选定文本,包括非 UI 自动化元素?我希望能够获取任何进程的当前焦点元素的当前内容的选定文本。

我见过使用 UI 自动化来执行此操作的各种示例,但这仅适用于某些似乎最近在 .NET 中开发的应用程序。我需要能够获取任何窗口的文本。

我记得不久前,一个应用程序的行为类似于字典,您可以将鼠标悬停在 Windows 中任意位置的某些文本上,它会显示一个带有定义的工具提示。这可以在 C# 和 .NET 中实现吗?

我一直在使用 WinSpy 检查窗口的内容,它似乎不适用于 UIA,并且 ApplicationId 显示为空或“”。我猜 UIA 不支持这个特定元素。我还注意到,当我使用 Notepad++ 进行测试时,它使用了 Scintilla,它似乎也不支持 UIA。

也许如果有人可以通过其他方法展示一种可靠的方法,我可以对我的应用程序使用混合方法。使用 UIA 框架,如果这没有产生结果,那么它会回落到其他一些方法。

最佳答案

实现此目的的一种简单方法是将 CTRL + C 键代码发送到选定的窗口,然后您可以在剪贴板中找到选定的文本。这很容易实现。参见 here用于向其他进程发送 key 和here读取剪贴板。缺点是您显然会丢失剪贴板内容。如果您搜索更可靠的解决方案 check this question .

关于c# - 是否可以获取任何窗口的选定文本,包括非 UI 自动化元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9047601/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com