お世話になります
C#からIEの自動操作をしたいと思っています。
C#コード中でIEを起動し、DocumentCompleteイベントを登録しています。
確かにページ遷移でイベントは実行されるのですが、新しいタブを開いたり、ポップアップウインドウが出現したりしたときはイベントが実行されません。。。
どのようにして全てのタブ・ウインドウを追いかければよいでしょうか
(WebBrowserControlだとnewWindowとかnewWindow2を実装してやりました)
やりたいこと
IEをC#アプリ側から操作して、新しいタブやポップアップウインドウが開いてもそれらに対してDocumentCompleteイベントが起動して欲しい。DOM操作をする
(例)ある操作をすると、ポップアップウインドウが開いて「操作が完了しました/失敗しました」と表示するようなサイトへの対応
WebBrowserControlだとネット上にかなりの量の情報が転がっているのですが
IEのほうはあまり数が多くなく(excelマクロのほうはそこそこあるみたいなのでそれを参考にしたりもしてます)、困っています。加えて参考になるサイト等を教えていただけますと幸いです
よろしくお願いいたします。
C#
1public void StartIE(string url) { 2 ie = new SHDocVw.InternetExplorer(); 3 ie.Navigate(url); 4 ie.Visible = true; 5 ie.NavigateComplete2 += Ie_NavigateComplete2; 6 ie.DocumentComplete += Ie_DocumentComplete; 7} 8//こんな感じ・・・ 9private void Ie_NavigateComplete2(object pDisp, ref object URL) { 10 Console.WriteLine("L URL =" + ie.LocationURL); 11 Console.WriteLine("L URL2 = " + ((SHDocVw.InternetExplorer)pDisp).LocationURL); 12 Console.WriteLine("NextUrl=" + URL.ToString()); 13 14 //throw new NotImplementedException(); 15} 16 17private void Ie_DocumentComplete(object pDisp, ref object URL) { 18 //処理とか 19} 20 21
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/05/08 14:45