首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

TCppWebBrowser 不完善执行JavaScript

2013-10-29 
TCppWebBrowser 不完美执行JavaScript按妖哥的做法:__fastcall TForm1::TForm1(TComponent* Owner) : TFor

TCppWebBrowser 不完美执行JavaScript
按妖哥的做法:
__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner)
{
 WebBrowser1->Navigate(L"http://www.ccrun.com");
 Sleep(2000);
 CrnRunJavaScript();
}

bool __fastcall TForm1::CrnRunJavaScript(void)
{
 IHTMLWindow2 *pWin;
 VARIANT vRet;
 bool bRet = false;

 while (WebBrowser1->Busy) {
Application->ProcessMessages();
 }

 IHTMLDocument2 *pDoc;

 if(FAILED(WebBrowser1->Document->QueryInterface(IID_IHTMLDocument2, ( LPVOID* )&pDoc))) {
return bRet;
 }
 try {
pDoc->get_parentWindow(&pWin);
if(pWin != NULL)
{
try {
pWin->execScript(L"alert('hostName:'+window.location.hostName);\r\nalert('window.cookie:'+window.cookie);", L"JScript", &vRet);
bRet = true;
}
__finally
{
pWin = NULL;
}
}
 }
 __finally
 {
pDoc = NULL;
 }
 return bRet;
}

脚本可执行,但hostName、cookie都为空,脚本前面加上“window.location.hostName = "www.ccrun.com";”,结果也一样,请高人指点解决。 JavaScript? TCppWebBrowser?
[解决办法]
你这段代码运行不完美, 我一点都不惊讶. 因为你javascript中的对象用的不对.

pWin->execScript(L"alert('hostname:' + window.location.hostname + ' cookie:' + document.cookie);", L"JScript", &vRet);

热点排行