1

mshtml を使用して、webbrowser コントロールを介して vb.net のフォームに入力しようとしています。

Dim doc As MSH.IHTMLDocument2 = DirectCast(wbMain.Document.DomDocument, MSH.IHTMLDocument2)
Dim buttons As MSH.HTMLElementCollection = doc.getElementsByTagName("button")
Dim Inputs As MSH.HTMLElementCollection = doc.getElementsByTagName("input")

しかし、私は次のエラーが発生します

タイプ 'System.__ComObject' の COM オブジェクトをインターフェイス タイプ 'mshtml.HTMLElementCollection' にキャストできません。IID '{3050F56B-98B5-11CF-BB82-00AA00BDCE0B}' を持つインターフェイスの COM コンポーネントでの QueryInterface 呼び出しが次のエラーのために失敗したため、この操作は失敗しました: No such interface supported (HRESULT からの例外: 0x80004002 (E_NOINTERFACE)) .

誰でも可能な解決策で私を助けることができますか?

4

1 に答える 1

1

MSH.HTMLElementCollection としての薄暗いボタン

タイプが間違っています。代わりに、IHTMLElementCollection にする必要があります。先頭の I に注意してください。MSDN ページはこちらです。

I がない型はインターフェイスではなくコクラスです。スクリプト クライアントが独自のコレクション オブジェクトを作成するときに使用します。

于 2012-11-03T15:56:08.477 に答える