void TForm1::Login()
{
CppWebBrowser1->Quit();
IHTMLDocument2 *Htmldoc = NULL ;
CppWebBrowser1->Document->QueryInterface(IID_IHTMLDocument2, (LPVOID*)&Htmldoc) ;
IHTMLElementCollection *elc=NULL;
IHTMLElement *pElement = NULL;
IDispatch *idp;
BSTR *obnm;
BSTR *obtype;
BSTR *obval;
long nCount,co;
IHTMLInputElement *input;
IHTMLFormElement *iform;
HRESULT rlt;
AnsiString txt;
obnm=new BSTR();
obtype=new BSTR();
obval=new BSTR();
Htmldoc->get_all(&elc);
elc->get_length(&nCount);
for(int i=0;i<nCount;i++)
{
Variant X;
X=i;
elc->item(X,X,&idp);
rlt=idp->QueryInterface(IID_IHTMLInputElement,(void **)&input) ;
idp->Release();
if(rlt==S_OK)
{
input->get_name(obnm);
txt=AnsiString(*obnm).LowerCase();
if(txt=="账号")
{
*obval=WideString(strUser).c_bstr();
input->put_value(*obval);
}
if(txt=="密码")
{
*obval=WideString(strPWD).c_bstr();
input->put_value(*obval);
}
}
}
for(int i=0;i<nCount;i++)
{
Variant X;
X=i;
elc->item(X,X,&idp);
rlt=idp->QueryInterface(IID_IHTMLFormElement,(void **)&iform) ;
idp->QueryInterface(IID_IHTMLElement,(void **)&pElement) ;
idp->Release();
if(rlt==S_OK)
{
pElement->get_id(obnm);
txt=AnsiString(*obnm).LowerCase();
txt=AnsiString(*obnm).LowerCase();
if(txt=="登录")
{
iform->submit();
}
}
}
delete obnm;
delete obtype;
delete obval;
Htmldoc->Release();
}
浙公网安备 33010602011771号