- ベストアンサー
IE7のVB.NETでの操作
Dim IE as Object Dim f As Object IE = CreateObject("InternetExplorer.Application") f = IE.document.forms(0) f.sentaku.click() このようにしてIEのボタンを押そうと考えているのですが、f = IE.document.forms(0)のところでエラーがでて止まってしまいます。 IE7はこのような操作はできなくなってしまったのでしょうか。 IEを終了して開き直して試しても同じ結果で困っています。 解決策を教えてください。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
お世話になります。 一応こんなので動きました。 Dim IE As Object = CreateObject("InternetExplorer.Application") Dim f As Object = Nothing Try IE.Visible = True IE.Navigate("http://nanikananika/hogehoge.cgi") While (IE.Busy) End While f = IE.Document.Forms(0) f.ボタン名.Click() Finally If Not f Is Nothing Then System.Runtime.InteropServices.Marshal.ReleaseComObject(f) End If If Not IE Is Nothing Then System.Runtime.InteropServices.Marshal.ReleaseComObject(IE) End If End Try ※環境 Windows XP SP2 IE 7.0.5730.11 .NET FrameWork 2.0
その他の回答 (1)
- naganaga_001
- ベストアンサー率71% (172/242)
お世話になります。 以下のコード(前の投稿と変わっているのは IE.Navigate ... Click の部分)で動かなければ、たぶん私と質問者さんの 環境が異なるんだと思います。 そうでなければ、Navigate している URL や、 Forms(x) の x の部分、ボタン名など が原因になると思います。 Dim IE As Object = CreateObject("InternetExplorer.Application") Dim f As Object = Nothing Try IE.Visible = True IE.Navigate("http://www.xbox.com/ja-JP/default.htm") While (IE.Busy) End While f = IE.Document.Forms(2) f.FindAGameSubmit.Click() Finally If Not f Is Nothing Then System.Runtime.InteropServices.Marshal.ReleaseComObject(f) End If If Not IE Is Nothing Then System.Runtime.InteropServices.Marshal.ReleaseComObject(IE) End If End Try
お礼
どうやらうまくいかないようなので諦めます。 ありがとうございました!
お礼
ありがとうございます。 オブジェクトの解放は参考になりました。 でもやはり f = IE.Document.Forms(0) のところでエラーが出ます。。。 PCの方がおかしいのでしょうか。 環境は全く同です。