定数は↓
#define INTERNET_OPTION_PROXY 38
#define INTERNET_OPTION_REFRESH 37
#define URLMON_OPTION_USERAGENT 0x10000001
#define URLMON_OPTION_USERAGENT_REFRESH 0x10000002
詳しくはこちらを参照してください。
http://msdn2.microsoft.com/en-us/library/ms775125.aspx
HTTPヘッダを使ったやり方↓
#define DIID_DWebBrowserEvents2 "{34A715A0-6587-11D0-924A-0020AFC7AC4D}"
#define DISPID_BEFORENAVIGATE2 250
#define DISPID_NEWWINDOW2 251
#define VARIANT_TRUE (-1)
szAgent = "test browser"
// 追加するHTTPヘッダ。改行(CRLF)区切りで
szHttpHeader = "User-Agent: " + szAgent + "\n"
// リファラも指定してみる
szHttpHeader += "referer: http://www.onionsoft.net/hsp/\n"
axobj ie, "Shell.Explorer.2"
comevent ie_event, ie, DIID_DWebBrowserEvents2, *lb_event
ie->"Navigate" "http://taruo.net/e/?"
stop
*lb_event
switch comevdisp(ie_event)
case DISPID_BEFORENAVIGATE2
gosub *lb_OnBeforeNavigate2
swbreak
default
swbreak
swend
return
*lb_OnBeforeNavigate2
comevarg pDisp, ie_event, 0
comevarg url, ie_event, 1
comevarg flags, ie_event, 2, 2
comevarg frameName, ie_event, 3, 2
comevarg postData, ie_event, 4, 2
comevarg header, ie_event, 5
comevarg cancel, ie_event, 6, 2
// 追加ヘッダにユーザーエージェントが入っていればreturn
// (サイズで判断しても良いかも)
if instr(header, 0, szAgent) != -1 : return
// Navigateキャンセル
cancel("value") = VARIANT_TRUE
// ヘッダを追加してNavigate
pDisp->"Navigate" url, flags, frameName, postData, szHttpHeader
return