有人可以帮助我吗?我是VB.net的新手,并尝试编写一个非常简单的代码来操纵网站。不过,我不断收到VB.net InternetExplorer HtmlDocument
“‘’类型的未处理的异常在推迟All.exe发生 ....无法转换类型 ‘系统.__ ComObject’的接口类型“COM对象mshtml.HTMLDocument'。这个 操作失败,因为对于具有IID'....)“的接口,COM组件 上的QueryInterface调用。
Dim IE As InternetExplorer
Dim HTMLDoc As HtmlDocument
Dim oHTML_Element As mshtml.IHTMLElement
IE = new InternetExplorer
IE.Navigate("http://www.mediafire.com/")
Do Until IE.ReadyState = 4
Loop
Loop Until Not IE.Busy
' ERROR on the following line
HTMLDoc = IE.Document
' I tried making HTMLDoc as object. It passed the above line, but failed the next line due to no GetElementsByTagName method
For Each oHTML_Element In HTMLDoc.GetElementsByTagName("input")
'....................
Next
+1
你必须等待浏览器实际浏览网页。在那之前,Document属性可能是空的 - 或者其他一些不确定的。 –
+0
您想处理DocumentCompleted事件。 –
+0
谢谢Dan-o。对不起,我编辑了我的帖子。我没有等到一切都完成了。看来IE.Document是一个com.object,不能被转换成HTMLDocument。我不知道为什么它不起作用。它在VBA中工作。 –