找回密码
 注册
搜索
查看: 479|回复: 0

[讨论] 获取wince IE 失败 请帮帮忙!!!

[复制链接]
发表于 2008-5-19 10:45:23 | 显示全部楼层 |阅读模式
获取wince IE(我用的就是WINCE的IESAMPLE)打开的当前网页的指定(鼠标选中的内容块)的内容(文字内容),如:鼠标选中的一段网页的新闻,部分代码如下:

//CHAR Buffer[8192];//用来获取鼠标的选中的值
DWORD dwErr= 0x0;
// CComPtr<IHTMLDocument> pDoc;
CComPtr<IHTMLDocument2> pDoc2=NULL;
CComPtr<IWebBrowser2> _pBrowser;//_pBrowser当前网页的IWebBrowser2接口

HRESULT hr;

IDispatch* pDocDisp=NULL;

if(_pBrowser!=NULL)
{
hr= _pBrowser->get_Document(&pDocDisp);
CHAR buf[1024];
DWORD dwErr= 0x0;
dwErr= GetLastError( );
sprintf( buf, "%X", dwErr );//返回0x00000006句柄无效
}

if(pDocDisp!=NULL)
{
hr=pDocDisp->QueryInterface(IID_IHTMLDocument2,(LPVOID*)&pDoc2);//查询接口IHTMLDocument2失败,返回的pDoc2不行,主要是这里的问题,帮我看看

CHAR buf[1024];
DWORD dwErr= 0x0;
dwErr= GetLastError( );
sprintf( buf, "%X", dwErr );
if(!SUCCEEDED(hr))
{
MessageBox( _hWnd, L"No this interface", L"Error", MB_OK );
}

}

IHTMLSelectionObject* pSelection=NULL;
if(pDoc2!=NULL)
{
hr=pDoc2->get_selection(&pSelection);
dwErr= GetLastError( );
sprintf( buf, "%X", dwErr );
}

if(SUCCEEDED(hr))
{
IDispatch* pDispRange=NULL;
if(pSelection!=NULL)
{
hr=pSelection->createRange(&pDispRange);
dwErr= GetLastError( );
sprintf( buf, "%X", dwErr );
}

if(SUCCEEDED(hr))
{
IHTMLTxtRange* pTextRange=NULL;
if(pDispRange!=NULL)
{
hr=pDispRange->QueryInterface(IID_IHTMLTxtRange,(void**)

(&pTextRange));
dwErr= GetLastError( );
sprintf( buf, "%X", dwErr );
}

if(SUCCEEDED(hr))
{
CComBSTR sText=NULL;

if(pTextRange!=NULL)
{
pTextRange->get_text(&sText);//鼠标选中的得到的Buffer给

sText;
//
dwErr= GetLastError( );
sprintf( buf, "%X", dwErr );
}

pTextRange->Release();
}

pDispRange->Release();
}

pSelection->Release();

}
// pDoc2->Release();

return S_OK;

网上很多人这样用,我就不行了,那位大侠先看到,请帮忙看看,帮帮忙,谢谢了
硬件是三星2440开发板
高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-11-25 16:29 , Processed in 0.045716 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表