问题标签 [microsoft.mshtml]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
205 浏览

c# - 使用 mshtml 和 shdocview vb.net/C# 捕获 Web 元素

我想设计一个 WPF 页面,我们可以在其中捕获网页屏幕元素。这应该类似于 IE F12(DOM Explorer) 选择元素选项。任何人都可以建议从哪里开始。提前致谢

0 投票
1 回答
1114 浏览

c# - C# - mshtml 和 SHDocVw 完整文档

我不确定这是否是一个有效的问题,但我很难为这两个 DLL、mshtmlSHDocVw找到合适的文档。

我正在尝试使用这 2 个 DLL 进行一些自动化操作。为此,我必须首先阅读并理解这两个库包含的内容、所有方法、函数等。

但我似乎无法在网上找到任何完整的文档。我尝试在 MSDN 甚至在 Microsoft 中进行检查,但它有些缺乏信息。例如,我找不到任何有关 HTMLInputTextElement 和 IHTMLSelectElement 的信息。

我想在包含有关这两个图书馆的充分/完整信息的网站/书籍上寻求您的帮助。我希望你们能指点我。

0 投票
2 回答
385 浏览

vba - MSHTML.HTMLDocument 中的“getElementsByClassName”问题

该问题仅在使用 getElementsByClassName 时发生

测试在 Windows 8.1 和 Windows XP 上进行

视窗 8.1

虽然在 IDE 中一切正常,但编译时只是出现错误:

Windows 8.1 上的错误

mshtml.dll 11.00.9600.18860

mshtml.tlb 11.0.9600.16518

该方法存在,但现在为什么它在 IDE 中有效,但在编译时无效?

视窗

甚至在 IDE 中也没有工作,出现以下错误消息:

在此处输入图像描述

mshtml.dll 8.0.6001.23588

mshtml.tlb 8.0.6001.18702(旧版本,没有getElementsByClassName)

mshtml.tlb 11.0.9600.16518(使用此版本但不起作用)

我究竟做错了什么?

0 投票
0 回答
124 浏览

c# - C#/MSHTML - HTMLInputElement click() 方法在“文件”类型的输入元素上使用时陷入无限循环

我在自动化 IE 中使用 MSHTML。我的要求之一是上传文件,并且我可以使用 click() 方法 HTMLInputElement 单击浏览按钮。

但是,在调用 click() 之后,程序并没有退出上述方法,并且似乎无限期地卡在那里,除非我手动处理 File Upload 弹出窗口。

是否有解决此问题的方法,或者是否有其他方法可以使用 MSHTML 上传文件?

下面是我的代码:

0 投票
1 回答
110 浏览

c# - 读取 mshtml.HTMLDocument.Script 属性时出现 InvalidCastException

尝试读取 mshtml.HTMLDocument 属性会导致以下异常:

mscorlib.dll 中出现“System.InvalidCastException”类型的未处理异常附加信息:指定的强制转换无效。发生了

这发生在“object script = doc.Script;”这一行上。

代码:

这是我正在使用的测试页面:

这是我的项目参考:

0 投票
0 回答
130 浏览

.net - MSHTML DLL 在启动时加载很慢

我有一个相当大的 VB.NET WinForms 项目,直到最近才加载良好。我不记得启动代码有任何重大变化,我只能想到最近可能对开发环境产生影响的 VS2019 升级。

下面是最后一行导致问题的调试输出。提前致谢

“Soap.exe”(CLR v4.0.30319:DefaultDomain):加载“C:\WINDOWS\Microsoft.Net\assembly\GAC_64\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll”。已加载符号。'Soap.exe' (CLR v4.0.30319: DefaultDomain): 加载'C:\TWS API 976\samples\VB\soap_may3rd\soap\SoapCore\bin\Debug\Soap.exe'。已加载符号。“Soap.exe”(CLR v4.0.30319:Soap.exe):加载“C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\Microsoft.VisualBasic\v4.0_10.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualBasic.dll”。已加载符号。“Soap.exe”(CLR v4.0.30319:Soap.exe):已加载“C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System\v4.0_4.0.0.0__b77a5c561934e089\System.dll”。已加载符号。“Soap.exe”(CLR v4.0.30319:Soap.exe):加载了“C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Core\v4.0_4.0.0。0__b77a5c561934e089\System.Core.dll'。已加载符号。'Soap.exe' (CLR v4.0.30319: Soap.exe): 加载'C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Windows.Forms\v4.0_4.0.0.0__b77a5c561934e089\System.Windows.Forms .dll'。已加载符号。“Soap.exe”(CLR v4.0.30319:Soap.exe):已加载“C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Drawing\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Drawing.dll”。已加载符号。“Soap.exe”(CLR v4.0.30319:Soap.exe):已加载“C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Configuration\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll”。已加载符号。“Soap.exe”(CLR v4.0.30319:Soap.exe):已加载“C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Xml\v4.0_4.0.0.0__b77a5c561934e089\System.Xml.dll”。已加载符号。'肥皂.exe' (CLR v4.0.30319:Soap.exe):已加载“C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Runtime.Remoting\v4.0_4.0.0.0__b77a5c561934e089\System.Runtime.Remoting.dll”。已加载符号。“Soap.exe”(CLR v4.0.30319:Soap.exe):加载“C:\TWS API 976\samples\VB\soap_may3rd\soap\SoapCore\bin\Debug\InteractiveBrokers.dll”。已加载符号。“Soap.exe”(CLR v4.0.30319:Soap.exe):已加载“C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\Accessibility\v4.0_4.0.0.0__b03f5f7f11d50a3a\Accessibility.dll”。已加载符号。'Soap.exe' (CLR v4.0.30319: Soap.exe): 加载'C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Windows.Forms.DataVisualization\v4.0_4.0.0.0__31bf3856ad364e35\System.Windows .Forms.DataVisualization.dll'。已加载符号。'Soap.exe' (CLR v4.0.30319: Soap.exe): 加载'C: \WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Management\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Management.dll'。已加载符号。线程 0x176c 以代码 0 (0x0) 退出。“Soap.exe”(CLR v4.0.30319:Soap.exe):加载“C:\TWS API 976\samples\VB\soap_may3rd\soap\SoapCore\bin\Debug\MathNet.Numerics.dll”。ReqCore done 线程 0x5ccc 已退出,代码为 0 (0x0)。“Soap.exe”(CLR v4.0.30319:Soap.exe):已加载'C:\WINDOWS\assembly\GAC\Microsoft.mshtml\7.0.3300.0__b03f5f7f11d50a3a\Microsoft.mshtml.dll'。模块是在没有符号的情况下构建的。

0 投票
0 回答
403 浏览

c# - 无法将“System.__ComObject”类型的 COM 对象转换为接口类型“mshtml.HTMLDocument”

试图附加到IE浏览器..它工作了一段时间然后开始抛出这个错误......

此代码在 500 毫秒的计时器上触发...

有人可以告诉我如何解决吗?我做错了什么?|| 我该如何改进它...我的代码如下...

自我说明:为什么我需要更多细节?源代码比程序员在编写下一个百万美元的应用程序时想要给出的细节要多得多!

0 投票
1 回答
190 浏览

c# - 如何使被 JS addEventListener 捕获的 SHDocVw.InternetExplorer 触发事件?

以下问题:

  • 我需要模拟一个 div 元素的双击。
  • 我需要使用/处理 MS Internet Explorer 11。
  • 我无法更改目标站点的源代码。

到目前为止我的解决方案:

  • 我使用 C# 和 SHDocVw.InternetExplorer 和 mshtml
  • 我可以触发“点击”事件,它们会出现在所有处理程序中
  • 尝试模拟双击时:
    • “ondoubleclick”事件被触发。
    • el.addEventListener('dblclick', handler);不会被触发

为了降低实际问题站点的复杂性,我也创建了这个模拟问题的 HTML 代码:

我的 C# 代码是这样的:

和我的事件类(可能根本不需要):

运行代码时,我得到以下结果:

如您所见,点击事件都到达(onclick, click, onclick, click, ondblclick)了,但addEventListener('dblclick', ...)没有。应该(onclick, click, onclick, click, ondblclick, dblclick)在最后。有什么想法可以做到这一点吗?

我的另一个解决方案是劫持鼠标并模拟“真正的”点击,但这对我来说太老套了。

0 投票
1 回答
97 浏览

telerik - 无法在 Telerik 报告中加载文件或程序集 microsoft.mshtml

我正在使用 Telrik Reporting 并打开 trdp 文件以对其进行修改后,当我选择一个 bloc 部分对其进行编辑时,出现此错误:

在此处输入图像描述

笔记:

我已经Microsoft.mshtml在 Visual Studio 2019 中添加了选项,并且Copy local选项设置为 true,但没有任何变化,我仍然收到此异常。

在此处输入图像描述

我该如何解决?