架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 209|回复: 4

[资料] 【实战】使用 .NET 切换 Edge 浏览器选项卡网址

[复制链接]
发表于 2022-5-29 22:25:03 | 显示全部楼层
需求:获取当前 Edge 所有选项卡的网址,根据关键词切换指定选项卡的网址。本文使用 .NET 程序调用 UI Automation API 来实现功能。

首先,新建一个 .net framework 的 winform 的窗口程序,需要引用 UIAutomationClient.dllUIAutomationTypes.dll 类库,文件位置:C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0

它好像会根据程序集版本,帮我们引用相对应的 dll,实际引用的地址如下:

C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.7.2\UIAutomationClient.dll
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.7.2\UIAutomationTypes.dll
主要的原理是通过搜索 UI 标签名称来发送按键数据来实现的,如果是英文的操作系统,可以搜索“Address and search bar”关键词来找到该 UI 元素,但是中文操作系统是什么关键词呢?

需要借助 Inspect 工具来找到元素名称,工具位置:"C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64\inspect.exe"

建议使用 Inspect 而不是 UISpy,因为使用 Inspect 我能够找到地址栏。我切换到使用监视焦点,然后单击地址栏并 Inspect 找到它。Inspect 是 Windows 工具包的一部分,可以与Windows 10 SDK一起安装。
QQ截图20220529222052.jpg

还有一个难点是要在 URL 地址栏切换成英文输入法,否则无法正常跳转,效果图如下:

edge.gif

源码如下:

(完)





上一篇:【实战】服务器搭建 LibreSpeed 测试网速
下一篇:【实战】使用 Docker 搭建 DNS 服务(dnsmasq)
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2022-5-29 22:48:28 | 显示全部楼层
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2022-5-29 22:58:49 | 显示全部楼层
UIAutomationClient 相关类库好像可以直接引用,如下图:

QQ截图20220529225800.jpg

码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2022-6-3 22:53:37 | 显示全部楼层
学习学习。。。。
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2022-6-17 09:31:59 | 显示全部楼层
学习学习,收藏,做过记录
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2022-7-6 06:58

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表