主要参考http://www.cnblogs.com/scrat/archive/2012/09/12/2682626.html

主要思路如下:

通过 FindWindow() FindWindowEx()函数获得窗口句柄,通过SendMessage获得具体值。具体函数方法请自行百度。

FindWindow这个函数检索处理顶级窗口的类名和窗口名称匹配指定的字符串。这个函数不搜索子窗口。

FindWindowEx是在窗口列表中寻找与指定条件相符的第一个子窗口 。

需要注意的地方是获得窗口的参数问题 这里是如何得到如"IEFrame","WorkerW"等的值呢?

利用工具spy++。Spy++ (SPYXX.EXE) 是一个基于 Win32 的实用工具,它提供系统的进程、线程、窗口和窗口消息的图形视图。使用 Spy++ 可以执行下列操作: 显示系统对象(包括进程、线程和窗口)之间关系的图形树。 搜索指定的窗口、线程、进程或消息。 查看选定的窗口、线程、进程或消息的属性。

打开软件:

IEFrame ->WorkerW-> ReBarWindow32-> Address Band Root-> Edit

代码如下:

#include <windows.h>
#include <stdio.h>
#include <malloc.h>
char URL[] = {};
void getURL()
{
HWND hWnd =FindWindow("IEFrame", NULL);     //获得IE窗口句柄
HWND hWnd1=FindWindowEx(hWnd, , "WorkerW", NULL);   //获得IE窗口的工作区句柄
HWND hWnd2=FindWindowEx(hWnd1, , "ReBarWindow32", NULL);     //获得IE窗口的菜单栏句柄
HWND hWnd3=FindWindowEx(hWnd2, , "Address Band Root", NULL); //获得IE窗口地址栏句柄
HWND hWnd4=FindWindowEx(hWnd3, , "Edit",NULL); //获得IE窗口地址栏编辑框句柄 if(hWnd4 != NULL)
{
int i=SendMessage(hWnd4,WM_GETTEXTLENGTH,,); //向IE窗口地址栏编辑框发送获取字符串长度的命令
memset(URL, ,);
SendMessage(hWnd4,WM_GETTEXT,i+,long(URL)); //向IE窗口地址栏编辑框发送获取字符的命令
printf("%s\n",URL);
return;
}
else
{
printf("Don't find IE!\n"); }
return;
}
int main(int argc, char* argv[])
{
   //一个死循环,每隔一秒去取得IE当前输入框内容
while()
{
getURL();
Sleep();
}
return ;
}

ps:代码可能还有些问题,待进一步改进。

小玩意1-实时获取IE浏览器输入框URL地址的更多相关文章

  1. Uipath 获取当前浏览器页面URL

    文章来源东京IT青年前线 http://www.rpatokyo.com   Uipath 获取当前浏览器页面URL的方法 Inject Js Script   因为目前没有直接获取页面URL的Act ...

  2. PHP中$_SERVER获取当前页面的完整URL地址

    PHP中$_SERVER获取当前页面的完整URL地址,其实很简单,主要是通过$_SERVER超全局变量来实现的. 具体PHP中$_SERVER获取当前页面的完整URL地址如下. #测试网址:     ...

  3. QT 通过QNetworkReply *获取对应请求的URL地址

    [1]QT 通过QNetworkReply *获取对应请求的URL地址 reply->url().toString(); Good Good Study, Day Day Up. 顺序 选择 循 ...

  4. PHP获取当前页面完整url地址,包括参数的函数

    //php获取当前访问的完整url地址 function get_current_url(){     $current_url='http://';     if(isset($_SERVER['H ...

  5. 【JavaScript】不使用正则表达式和字符串的方式来解析浏览器的URl地址信息

    1.比如我们要获取的网站URl地址是:https://music.163.com/#/playlist?id=2384581760 一般我们能够想到的方式是直接使用正则表达式获取使用字符串直接解析的方 ...

  6. JS获取当前完整的url地址以及参数的方法

    javascript 获取当前 URL 参数的两种方法: //返回的是字符串形式的参数,例如:class_id=3&id=2& function getUrlArgStr(){ var ...

  7. JAVA获取当前请求的URL地址,包含请求链接中的参数

    /** * 获得当前访问的URL路径 * @param request * @return */ public static String getLocation(HttpServletRequest ...

  8. java 获取请求的完整url地址

    String url=request.getRequestURL()+"?"+request.getQueryString();

  9. thymeleaf 页面获取当前页面的完整URL地址

    下面两种方法是一样的 <div th:text="${#httpServletRequest.getRequestURL() +'?'+ #httpServletRequest.get ...

随机推荐

  1. js 代码几种方式

    var nameSpace={ //public } (function(){ //private })(); var module=(function(){ //private return { / ...

  2. WebDriver 工作原理

    WebDriver是W3C的一个标准,由Selenium主持. 具体的协议标准可以从http://code.google.com/p/selenium/wiki/JsonWireProtocol#Co ...

  3. windows下python3.6安装pycryto or crypto or pycryptodome与使用

    pycrypto,pycrytodome和crypto是一个东西,在很久以前,crypto在python上面的名字是pycrypto它是一个第三方库,但是已经停止更新三年了,所以不建议安装这个库: w ...

  4. C++的继承与多态

    ◆ 概念介绍 继承:为了代码的重用,保留基类的原本结构,并新增派生类的部分,同时可能覆盖(overide)基类的某些成员. 多态:一种将不同的特殊行为和单个泛化记号相关联的能力,分为静态多态和动态多态 ...

  5. Android事件分派机制

    最近一直在学习Android里面的事件分派机制,感觉很奇妙,看了很多博客和分析,才在脑子里形成了一个模糊的概念,对事件分派有了一定的认识. 于是,我画了一个图来简单明了的表述Android中事件的分派 ...

  6. crosses initialization of “XXX” 的问题

    在switch-case中定义了变量,用g++编译的时候报错crosses initialization of “XXX” ,在网上一查,说是gcc要求变量的定义不能位于goto之后 将变量定义放在s ...

  7. js本地储存userData实例

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head ...

  8. js 添加事件兼容性

    var tools = { //添加事件 addHandle: function (e, type, handle) { if (e.addEventListener) { e.addEventLis ...

  9. java线程dump分析工具

    jstack和线程dump分析  java程序性能分析之thread dump和heap dump 一.[内存dump] jmap –dump:live,format=b,file=heap.bin ...

  10. Qt4问题集锦

    一.Qt程序发布后加载的jpg.jpeg图片不可见 问题的提出: 最近在客户机器上部署安装QT编写的软件,发现只要是jpg.jpeg格式的图片都无法显示出来.最后发现必须按如下述步骤才能显示jpg.j ...