3,055
社区成员
发帖
与我相关
我的任务
分享
...
CComQIPtr<IHTMLDocument3,&IID_IHTMLDocument3> spDoc3;
spDoc3 = pDocDispatch;
HRESULT hr;
CComQIPtr<IHTMLElementCollection,&IID_IHTMLElementCollection> spTargetItems;
CComQIPtr<IHTMLElement,&IID_IHTMLElement> spTargetItem;
...
CComBSTR tagName("TABLE");
hr = spDoc3->getElementsByTagName(tagName,&spTargetItems);
long len;
spTargetItems->get_length(&len);
long i;
LPDISPATCH pElementDisp;
CComVariant varIndex;
varIndex.vt = VT_I4;
for (i=0;i<len;i++)
{
varIndex.lVal = i; //这一句在Debug版本中抛出异常,说是expression p==0 ,
//但在release版本中没有问题
//如果将i的初值设为1【for (i=1;i<len;i++)】,就没有这种问题,这是WHY?
hr = spTargetItems->item(varIndex,varIndex,&pElementDisp);
hr = pElementDisp->QueryInterface(__uuidof(IHTMLElement),(void**)&spTargetItem);
...
}
T** operator&()
{
ATLASSERT(p==NULL);
return &p;
}
for (i=0;i<len;i++)
{
CComVariant varIndex;
varIndex.vt = VT_I4;
varIndex.lVal = i; //这一句在Debug版本中抛出异常,说是expression p==0 ,
//但在release版本中没有问题
//如果将i的初值设为1【for (i=1;i<len;i++)】,就没有这种问题,这是WHY?
hr = spTargetItems->item(varIndex,varIndex,&pElementDisp);
hr = pElementDisp->QueryInterface(__uuidof(IHTMLElement),(void**)&spTargetItem);
...
}