• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:起動済のIEから.NET FrameworkのHtmlDocumentを取得できますか?)

起動済のIEから.NET FrameworkのHtmlDocumentを取得できますか?

このQ&Aのポイント
  • 起動しているInternet Explorerのオブジェクトから、.NET FrameworkのHtmlDocumentクラス(System.Windows.Forms名前空間)のオブジェクトを取得する方法を探しています。
  • mshtml.HTMLDocumentを使ってHTMLを解析するとCOMオブジェクトの解放が難しいので、.NET Frameworkの中で操作したいと考えています。
  • しかし、mshtml.HTMLDocumentからSystem.Windows.Forms.HtmlDocumentにキャストするときにエラーが発生しています。System.InvalidCastExceptionが出ています。

質問者が選んだベストアンサー

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

System.Windows.Forms.HtmlDocumentにコンストラクタが無いのでちょっと無理なように思います 非表示の WebBrowserコントロールなどに 取得したmshtml.HtmlDocuemnt.Urlなどを与えて WebBrowserのDocumentプロパティから取得といった方法になりそうです 細かい操作をしようとすれば HTMLElementを取得してこれのDomElementを使うといった方法になりそうです HTMLElementクラスはHTMLタグ要素の一般的なプロパティしか装備していませんから …

noname#259208
質問者

お礼

なるほど、コンストラクタがないから無理、と考えればいいんですね。勉強になりました。 非表示のWebBrowserを使う方法もなるほどと思いました。でも、問題のサイトはログインが必要なサイトで、WebBrowserにURLを渡しても上手く表示されませんでした。また、その後も元のIEの画面上でINPUTやSELECTに必要なデータをセットしてボタンをクリックして次の画面で・・・、という風にやっていきたいので、非表示のWebBrowserを使うやり方は残念ながらできません。 あきらめて別の方法を考えようと思います。ご回答ありがとうございました。

関連するQ&A