人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

http://q.hatena.ne.jp/1248657374

上記記事のNo.3のコードを参考にして、VBAから開いたIEを制御し、Webサイト上で
開かれたJavascriptのconfirmポップアップを自動処理するコードを作成していた
のですが、特定の端末でその処理がうまくいっていないことが判明しました。

条件ははっきりしていないのですが、どうもIE9を使用している端末では
GetLastActivePopupでconfirmポップアップのウインドウハンドルが取得できず
親ウインドウのハンドルがかえっているためにループしているようでした。

質問はこうした場合にconfirmポップアップのウインドウハンドルを得る
他の手段がないかという点になります。
また、IE9であっても問題なく上記コードを動作させることができるようであれば、
どの辺りに問題の原因があるのかを特定したいと思っています。

●質問者: mold
●カテゴリ:コンピュータ
○ 状態 :キャンセル
└ 回答数 : 0/0件

▽最新の回答へ

質問者から

・補足1
とりあえずIEのメジャーバージョンを見て9だったら
FindWindow("#32770", "Web ページからのメッセージ")
でウインドウハンドルを取得するようにしました。
ただ、これだとIE10以降で動作する保証がないので、
他にクールな処理の仕方を継続募集します。

・補足2
改めて確認してみるとどうもGetLastActivePopupが失敗
するのはIEというよりOS要因である可能性があるようです。
今のところ確認ができている条件は
WindowsXP/IE8:成功
Windows7(32bit)/IE8:失敗
Windows7(32bit)/IE9:失敗
となります。

再現条件がはっきり特定できていない状況で恐縮ですが、
引き続きconfirmポップアップのウインドウハンドル取得
方法について募集します。


関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ