获取当前 IE 地址栏中的 URL

分 IE7 及 IE6 这两种情况 .

在 IE6 中这样获取地址栏中的 URL, 其中 strAdd 即为所求:

HWND hIE = NULL;
HWND hWorker = NULL;
HWND hBar = NULL;
HWND hComboBox = NULL;
TCHAR szAddr[MAX_PATH] = { 0 };

hIE = ::FindWindow(_T("IEFrame"), NULL);

if (hIE)
{
	hWorker = ::FindWindowEx(hIE, 0, _T("WorkerW"), NULL);
}
if (hWorker)
{
	hBar = ::FindWindowEx(hWorker, 0, _T("ReBarWindow32"), NULL);
}
if (hBar)
{
	HWND hComboBox = ::FindWindowEx(hBar, 0, _T("ComboBoxEx32"), NULL);
	::SendMessage(hComboBox, WM_GETTEXT, MAX_PATH, (LPARAM)szAddr);
}

在 IE7 中这样获取地址栏中的 URL, 其中 strAdd 即为所求:

HWND hIE = NULL;
HWND hWorker = NULL;
HWND hBar = NULL;
HWND hComboBox = NULL;
TCHAR szAddr[MAX_PATH] = { 0 };

hIE = ::FindWindow(_T("IEFrame"), NULL);
if (hIE)
{
	hWorker = ::FindWindowEx(hIE, 0, _T("WorkerW"), NULL);
}
if (hWorker)
{
	hBar = ::FindWindowEx(hWorker, 0, _T("ReBarWindow32"), NULL);
}
if (hBar)
{
	HWND hAddress = ::FindWindowEx(hBar, 0, _T("Address Band Root"), NULL);
	HWND hComboBox = ::FindWindowEx(hAddress, 0, _T("ComboBoxEx32"), NULL);
	::SendMessage(hComboBox, WM_GETTEXT, 255, (LPARAM)strAdd);
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-07 07:17:11

获取当前 IE 地址栏中的 URL的相关文章

在浏览器的地址栏中输入url后发生了什么

这是一个非常有意思的事情,通过这个我们可以更好地理解http请求. 在浏览器的地址栏中输入url后会经历下面的步骤: 第一步:进行域名解析--- 浏览器搜索自身的DNS缓存,如果有缓存,再看有没有过期,如果没过期,就是用这个ip,如果过期,这个过程就结束了. 注:查看谷歌浏览器的dns缓存的方法--在地址栏中输入chrome://net-internals/#dns 这样就可以看到自己的浏览器中的dns缓存. 第二步:如果浏览器没有搜索到自身的dns缓存或者是自身的dns缓存已经失效,那么它就会

js 改变地址栏中的url

改变地址栏中的url,第三个参数指的即为在地址栏中想要显示的url(前面两个参数,一个是要传递的数据,一个是新页面的title,但是好像现在还不支持),如下: window.history.pushState(null, null, "http://127.0.0.1/haha"); 注意地址要同源

在浏览器地址栏中输入URL后发生了什么

在浏览器地址栏中输入URL后发生了什么 基本流程: ①查询ip地址 ②建立tcp连接,接入服务器 ③浏览器发起http请求 ④服务器后台操作并做出http响应 ⑤网页的解析与渲染 详细步骤如下: 查询ip地址 ①浏览器解析出url中的域名. ②查询浏览器的DNS缓存. ③浏览器中没有DNS缓存,则查找本地客户端hosts文件有无对应的ip地址. ④hosts中无,则查找本地DNS服务器(运营商提供的DNS服务器)有无对应的DNS缓存. ⑤若本地DNS没有DNS缓存,则向根服务器查询,进行递归查找

Java Web开发 - 将浏览器地址栏中的 Request 参数显示成中文

希望实现:在当 JSP 页面发起请求,或者 Servlet 跳转时,地址栏中的参数可以显示成中文. 在通常情况下,浏览器地址栏中的URL地址为了适配不同的浏览器,会将URL地址信息转码为"ISO 8859-1",中文参数就会被转码. 但是现在我们希望在浏览器地址栏中显示中文参数,可以使用如下办法: String url = "http://localhost:8080/test.jsp?notice=" + java.net.URLEncoder.encode(&q

获取URL地址栏中的参数并返回值

* 作用:获取URL地址栏中的参数并返回值 * @param 需要获取URL中的某个参数, String类型 */function GetLocationParam(param) { // 得到window.location的某个参数 var ss = ('' + window.location).split('?'); if(ss.length > 1) { var sss = ss[1].split('&'); for(var i = 0; i < sss.length; i++)

VB6获取IE8的地址栏的URL信息

这是个老梗了,也没什么技术含量.因为自从接触Linux之后,Windows上我所知道的那一点api基本上都忘光了.所以这样的博文可以当做是备忘,说不定有天还能用的到. Windows上想要获取浏览器的地址栏信息,基本思路是枚举浏览器的子窗体,然后获取hwnd(handle of window),最后使用SendMessage & WM_GETTEXT(或者 GetWindowText大体上没什么区别).好,基于这样的事实,我们来做个简单的实现. 1.获取IE窗口 这个很简单通过FindWindo

JavaScript获取地址栏中的参数

1.获取地址栏中的参数 (1)若地址栏中的地址是: http://10.124.36.56:8080/CMOD/index.jsp?name=you&password=123456&type=student (2)获取地址栏中的最后一个参数type 2.实现的JS function getAddressURLParam(paramName) { //构造一个含有目标参数的正则表达式的对象 var reg = new RegExp("(^|&)" + paramN

jQuery获取地址栏中的链接参数

http://caibaojian.com/177.html 问题描述 今天做一个主题,有一个需求是根据不同的页面来做,虽然php也可以做到,不过考虑到自己的特效代码都是在jQuery上完成,想着能否直接通过获取地址栏中的链接参数里面的数字直接来实现效果. 假设页面的地址是这样子的.http://caibaojian.com/p/165 ,那么我要获取最后的一个数字165,可以通过这样子的代码· var url= window.location.href; var index = url.sub

Javascript 获取地址栏里(URL)传递的参数

有时我们需要在js文件中用URL传来的参数,但是Javascript是客户端执行的脚本语言,而Session是服务器端的对象,我们不能直接取得Session中的值.那么,我们该如何在JS文件中获取URL中的参数呢? 下面介绍两种方式,一种是字符串拆分法,另一种是正则匹配法. 第一种:字符串拆分法 这种方式是通过location.search方法取得URL中的参数部分,然后再进一步处理得到的.具体代码如下: [javascript] //获取地址栏里(URL)传递的参数 function GetR