我在工作中慢慢地变得疯狂,必须手动收集 Internet Explorer 8 中运行的 ActiveX 对象中包含的数据。它本质上是一个包含一些关键客户详细信息等的票证系统。我必须复制和粘贴这些信息,而不是复制和粘贴更多内容。很健康。
我应该从哪里开始寻找一个解决方案,让我能够获取所需的数据并以编程方式导航 ActiveX 系统?
理想情况下,我会考虑用 Java 或 C# 编写一些东西,但我愿意接受任何建议!
最佳答案
除非您感兴趣的 ActiveX 通过公共(public)接口(interface)公开信息(在这种情况下您可以在页面上注入(inject) JavaScript 来读取数据),否则您将不得不使用某种形式的屏幕抓取。如果控件具有常规输入控件,那么应该不会太难,但如果直接渲染所有内容,您可能需要 OCR 图像...
注入(inject)脚本:
- 使用 WebBrowser 控件并“评估”页面上的脚本 - 这里有一些通信示例 http://msdn.microsoft.com/en-us/library/a0746166%28v=VS.85%29.aspx ,最终您将需要 InvokeScript - http://msdn.microsoft.com/en-us/library/system.windows.forms.htmldocument.invokescript%28v=VS.85%29.aspx
- 使用普通的 IE 自动化 http://msdn.microsoft.com/en-us/library/aa752084%28v=vs.85%29.aspx .
- 一次性在地址栏中使用“javascript:”或仅使用开发人员工具 (F12)。
- 利用网站的XSS漏洞(开个玩笑,如果你拥有这个网站,别忘了修复你发现的任何东西,至于向第三方报告错误请问你的良心)
关于c# - 从 Internet Explorer 8 中的 ActiveX 控件提取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8839520/