如何才能得到 IID_IHTMLElement2 接口然后给WebBrowser画图和接受事件?
如何才能得到 IID_IHTMLElement2 接口然后给WebBrowser画图和接受事件?
希望高手指点,给代码做出修改的 成功运行的 +100分
我代码中最后一句 如下,为何pCtrlElement2.addBehavior();不成功?
pdispImgElement-> QueryInterface(IID_IHTMLElement2, (void**) &pCtrlElement2);
pCtrlElement2.addBehavior()
CComPtr<IDispatch> spDisp; m_arrWB[i]->pWebBrowser->get_Document(&spDisp); //Query for HtmlDocument2 CComQIPtr<IHTMLDocument2> spDoc( spDisp ); //Get the active element CComPtr<IHTMLElement> spElementHit;BSTR strImgKey=BSTR ("sc.gif"); long lCount=0; IHTMLImgElement *pImg=NULL; CComPtr<IDispatch> pdispImgElement = NULL; //IDispatch* pdispImgElement = NULL; IDispatch* pdispCtrlRange = NULL; IHTMLElementCollection* pImgCol = NULL; spDoc->get_images(&pImgCol); pImgCol->get_length(&lCount); for (int i=0;i <lCount;i++) { BSTR bstrSrc=NULL; VARIANT index; index.vt=VT_I4; index.lVal=i; pImgCol->item(index,index,(IDispatch**)&pdispImgElement); pdispImgElement-> QueryInterface(IID_IHTMLImgElement,(void **)&pImg); if(NULL != pImg) { pImg-> get_src(&bstrSrc); //find the img we want!! int nComp = wcscmp(bstrSrc,strImgKey); if(nComp < 0)//表示相同 { break; } } pImg-> Release(); }//IHTMLControlElement* pCtrlElement = NULL;//pdispImgElement-> QueryInterface(IID_IHTMLControlElement, (void**) &pCtrlElement); IHTMLElement2 *pCtrlElement2 = NULL;pdispImgElement-> QueryInterface(IID_IHTMLElement2, (void**) &pCtrlElement2);pCtrlElement2.addBehavior();//???????????????????