问题标签 [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.
c# - 使用 mshtml 和 shdocview vb.net/C# 捕获 Web 元素
我想设计一个 WPF 页面,我们可以在其中捕获网页屏幕元素。这应该类似于 IE F12(DOM Explorer) 选择元素选项。任何人都可以建议从哪里开始。提前致谢
c# - C# - mshtml 和 SHDocVw 完整文档
我不确定这是否是一个有效的问题,但我很难为这两个 DLL、mshtml和SHDocVw找到合适的文档。
我正在尝试使用这 2 个 DLL 进行一些自动化操作。为此,我必须首先阅读并理解这两个库包含的内容、所有方法、函数等。
但我似乎无法在网上找到任何完整的文档。我尝试在 MSDN 甚至在 Microsoft 中进行检查,但它有些缺乏信息。例如,我找不到任何有关 HTMLInputTextElement 和 IHTMLSelectElement 的信息。
我想在包含有关这两个图书馆的充分/完整信息的网站/书籍上寻求您的帮助。我希望你们能指点我。
vba - MSHTML.HTMLDocument 中的“getElementsByClassName”问题
该问题仅在使用 getElementsByClassName 时发生
测试在 Windows 8.1 和 Windows XP 上进行
视窗 8.1
虽然在 IDE 中一切正常,但编译时只是出现错误:
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(使用此版本但不起作用)
我究竟做错了什么?
c# - C#/MSHTML - HTMLInputElement click() 方法在“文件”类型的输入元素上使用时陷入无限循环
我在自动化 IE 中使用 MSHTML。我的要求之一是上传文件,并且我可以使用 click() 方法 HTMLInputElement 单击浏览按钮。
但是,在调用 click() 之后,程序并没有退出上述方法,并且似乎无限期地卡在那里,除非我手动处理 File Upload 弹出窗口。
是否有解决此问题的方法,或者是否有其他方法可以使用 MSHTML 上传文件?
下面是我的代码:
c# - 读取 mshtml.HTMLDocument.Script 属性时出现 InvalidCastException
尝试读取 mshtml.HTMLDocument 属性会导致以下异常:
mscorlib.dll 中出现“System.InvalidCastException”类型的未处理异常附加信息:指定的强制转换无效。发生了
这发生在“object script = doc.Script;”这一行上。
代码:
这是我正在使用的测试页面:
这是我的项目参考:
.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'。模块是在没有符号的情况下构建的。
c# - 无法将“System.__ComObject”类型的 COM 对象转换为接口类型“mshtml.HTMLDocument”
试图附加到IE浏览器..它工作了一段时间然后开始抛出这个错误......
此代码在 500 毫秒的计时器上触发...
有人可以告诉我如何解决吗?我做错了什么?|| 我该如何改进它...我的代码如下...
自我说明:为什么我需要更多细节?源代码比程序员在编写下一个百万美元的应用程序时想要给出的细节要多得多!
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)
在最后。有什么想法可以做到这一点吗?
我的另一个解决方案是劫持鼠标并模拟“真正的”点击,但这对我来说太老套了。