HHXソースコード解析によるスクリプト。
リンクをクリックしたときにそのジャンプ先URLを取得します。HHXではこのURLを解析して様々な処理を行っています。
広告による読み込み(Javascript)に対しても反応してしまうようです。// 他のファイルにジャンプする時いちいち確認するブラウザのサンプル
// 主にhhx.hspから引用
#include "user32.as"
// ie event
#define DIID_DWebBrowserEvents2 "{34A715A0-6587-11D0-924A-0020AFC7AC4D}"
// exdispid.h
#define DISPID_BEFORENAVIGATE2 250 // hyperlink clicked on
#packopt hide 1
// ウィンドウ最大化を可能にする
// 参考 -> http://lhsp.s206.xrea.com/hsp_window.html
screen 0, ginfo_dispx, ginfo_dispy, screen_hide
GetWindowLong hwnd, -16
SetWindowLong hwnd, -16, stat | $10000 | $40000
// ActiveXコントロール(IEコンポーネント)の配置
axobj ieBrowser, "Shell.Explorer.2"
idIE = stat
if idIE == -1 {
dialog "ActiveXコントロールの配置に失敗しました。", 1
end
}
ieBrowser->"Navigate" "http://www.yahoo.co.jp/"
// 割り込み設定
comevent ieEvent, ieBrowser, DIID_DWebBrowserEvents2, *event_ie
oncmd gosub *event_resize, 0x0005
onexit goto *exit
width 640, 480
gsel 0, 1
stop
// COMイベント発生時のジャンプ先
*event_ie
if comevdisp(ieEvent) == DISPID_BEFORENAVIGATE2 {
// URLを取得
comevarg newurl, ieEvent, 1, 1
dialog newurl + "\nを開こうとしています。開きますか?", 2
if stat == 7 {
// 「いいえ」の場合はNAVIGATEをキャンセル
comevarg Cancel, ieEvent, 6, 2
Cancel("val") = 1
delcom Cancel
}
}
return
// ウィンドウのリサイズ
*event_resize
MoveWindow objinfo(idIE, 2), 0, 0, ginfo_winx, ginfo_winy, 1
return
// プログラムの終了処理
*exit
oncmd 0 : onexit 0
delcom ieEvent
delcom ieBrowser
end
2008年1月3日木曜日
IEコンポのジャンプ先URLを取得する
登録:
コメントの投稿 (Atom)
2 件のコメント:
IEコンポーネントでのポップアップリンクへの対応を考えていたのですがこちらのスクリプトを参考にし解決しました。ありがとうございました。
IEコンポーネントでのポップアップリンクへの対応を考えていたのですが、こちらのスクリプトを参考にし解決しました。ありがとうございました!
コメントを投稿