Пытаюсь получить поля INPUT HTML формы через IHTMLDocument2.
Написал код:
CComPtr<IOleContainer> spContainer;
m_spClientSite->GetContainer(&spContainer);
CComQIPtr<IHTMLDocument2, &IID_IHTMLDocument2> spDoc(spContainer);
if (spDoc)
{
spDoc->put_bgColor(CComVariant(CComBSTR(_T("green"))));
CComPtr<IHTMLElementCollection> spForms;
if(spDoc->get_forms(&spForms)==S_OK)
spDoc->put_bgColor(CComVariant(CComBSTR(_T("blue"))));
else
return E_FAIL;
long nFormsLength=0;
if(spForms->get_length(&nFormsLength))
{
VARIANT varName = {0}, varIndex = {0};
V_VT(&varName) = VT_I4;
V_VT(&varIndex) = VT_I4;
for(int i = 0; i < nFormsLength; i++)
{
V_I4(&varName) = i;
V_I4(&varIndex) = 0;
CComPtr<IDispatch*> spDispItem;
hr = spForms->item(varName, varIndex, spDispItem);
if(hr==S_OK)
{
.......
CComPtr<IHTMLFormElement> spForm1;
hr = pIDisp->QueryInterface(IID_IHTMLFormElement,(void**)&spForm1);
.......
}
}
}
else
return E_FAIL;
Валится между строк помеченных точками .... Подскажите плииз