怎样得到当前ie的url等信息!

cocia 2001-08-17 11:25:04
我做一个ie的工具按钮,安装在ie上.
启动的时候要用到当前用户浏览的url和html信息.
怎么作?
...全文
75 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
111222 2001-08-17
  • 打赏
  • 举报
回复
方法一:

获得IWebBrowser2接口,随后调用get_LocationURL.

HRESULT get_LocationURL(
BSTR FAR* pbstrLocationURL
);

这样不但可以获得IE的地址,还能对IE进行完全的控制...几句话说不清楚,到msdn.microsoft.com搜索BHO的相关内容..

另外一种相对简单的方法:

char* FindIEURL()
{

HWND hWorker,hRebar,hComEx,hcom,hEdit;

HWND hwndParent=::FindWindow("IEFrame",NULL);

if(hwndParent == NULL)//没有IE运行
return NULL;

char szURL[260];

hWorker=::FindWindowEx(hwndParent,0,"WorkerA",NULL);//找到工作区

if(hWorker == NULL)//用户用NT
hWorker=::FindWindowEx(hwndParent,0,"WorkerW",NULL);//WindowNT中的ie

hRebar=::FindWindowEx(hWorker,0,"ReBarWindow32",NULL);//找到Rebar

hComEx=::FindWindowEx(hRebar,0,"ComboBoxEx32",NULL);//找到Comboboxex

hcom=::FindWindowEx(hComEx,0,"ComboBox",NULL);//找到combobox

hEdit=::FindWindowEx(hcom,0,"Edit",NULL);//找到ComBoBox的edit控件句柄

//如果我们使用::SendMessage(hEdit,WM_GETTEXT,260,(LPARAM) szURL);
//将无法获得未浏览的IE地址栏的输入,还有其他一些问题..

DWORD result;
::SendMessageTimeout(hEdit,
WM_GETTEXT,
260,
szURL,
0,
1000,
&result);

return szURL;
}

-----------------

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧