VC FindWindow 得到IE网址

原创 2007年10月03日 15:45:00

前些时候,朋友想做一个小共享软件,软件的主要作用是阻止用户进入某些网站,他的设想是从IE的地址栏中获取键入的网址,如果这个网址非法的话,则不可以进入,代码如下:

HWND hwnd=::FindWindow(_T("IEFrame"),NULL);
 if(hwnd)
 {
   HWND hwnd2=::FindWindowEx(hwnd,NULL,_T("Edit"),NULL);


char sz[255];
::SendMessage(hwnd2,WM_GETTEXT,255,(LPARAM)sz);
AfxMessageBox(sz);
 }

结果发现不能得到正确的结果,从SPY上看,类名也全部是正确的,为什么不能得到正确的结果呢?看了他的代码后,我进行了如下改动,就可以得到正确的结果了:

HWND hwnd=::FindWindow(_T("IEFrame"),NULL);
if(hwnd)
{
HWND hwnd2=::FindWindowEx(hwnd,NULL,_T("WorkerW"),NULL);
HWND hwnd3=::FindWindowEx(hwnd2,NULL,_T("ReBarWindow32"),NULL);
HWND hwnd4=::FindWindowEx(hwnd3,NULL,_T("ComboBoxEx32"),NULL);
HWND hwnd5=::FindWindowEx(hwnd4,NULL,_T("ComboBox"),NULL);
HWND hwnd6=::FindWindowEx(hwnd5,NULL,_T("Edit"),NULL);

char sz[255];
::SendMessage(hwnd6,WM_GETTEXT,255,(LPARAM)sz);
AfxMessageBox(sz);
}
}

  以上的代码不用我解释了吧,这个问题不是什么大问题,难度也不大,但是可能会让初学者不明白为什么得不到程序某一控件的HANDLE,其实对VC来说,没有什么办不到的事情,只是需要你仔细的分析一下而已 

如何获得窗口句柄(FindWindow函数的使用)

一: 获得主窗口 HWND WINAPI FindWindow( _In_opt_  LPCTSTR lpClassName, _In_opt_  LPCTSTR lpWindowName ...
  • mjlsuccess
  • mjlsuccess
  • 2013-07-02 19:58:03
  • 18389

获取浏览器当前页面地址栏的URL

  • 2010年11月02日 09:27
  • 32KB
  • 下载

VC FindWindow 得到IE网址

前些时候,朋友想做一个小共享软件,软件的主要作用是阻止用户进入某些网站,他的设想是从IE的地址栏中获取键入的网址,如果这个网址非法的话,则不可以进入,代码如下:HWND hwnd=::FindWind...
  • guanchanghui
  • guanchanghui
  • 2007-10-03 15:45:00
  • 3239

C# 查找窗口,FindWindow用法

FindWindow 用来根据类名和窗口名来得到窗口句柄的。但是这个函数不能查找子窗口,也不区分大小写。 如果要从一个窗口的子窗口中查找需要使用FindWindowEX。   函数功能:该函数获...
  • lybwwp
  • lybwwp
  • 2012-11-10 10:16:39
  • 19266

VC FindWindow、FindWindowEx和EnumWindows

一.  对于有指定的窗口标题名称的窗口用FindWindow就可以满足要求; 二. 对于同一应用程序的多个实例枚举(ViewWnd.exe同时运行了3个实例,要把它们都要枚举出来),可以使用...
  • u013678464
  • u013678464
  • 2015-02-28 18:44:12
  • 1884

vc FindWindow得到ie地址栏地址

DWORD dwSize=255,dwType=REG_SZ; TCHAR szVersion[256] = {0};  LPCTSTR KeyValue = L"Version"; HKEY ...
  • lxf20054658
  • lxf20054658
  • 2013-01-15 16:24:54
  • 1766

操作IE

/// /// 获取IE句柄 /// /// private bool GetHandleOfBrowser() ...
  • wwm402654282
  • wwm402654282
  • 2015-06-19 11:31:56
  • 980

基于IE内核的多标签浏览器开发过程

By Fanxiushu  2014 转载或引用请注明原作者 原文链接:http://blog.csdn.net/fanxiushu/article/details/21837859 在W...
  • huasonl88
  • huasonl88
  • 2015-04-04 09:29:31
  • 7542

C#通过Win32 API操作IE浏览器 --- 获得IE的URL

using System;using System.Collections.Generic;using System.Text;using System.Runtime.InteropServices...
  • ziqing
  • ziqing
  • 2007-11-22 13:22:00
  • 2162

VC++启动浏览器打开指定网页 (转)

在程序中打开一个指定的网址.思路:启动一个进程来启动explorer.exe这个程序.我们知道在CMD命令行下输入 //这条cmd命令会启动IE并且打开这个网址.explorer.exe http:/...
  • dragoo1
  • dragoo1
  • 2017-01-17 21:31:34
  • 655
收藏助手
不良信息举报
您举报文章:VC FindWindow 得到IE网址
举报原因:
原因补充:

(最多只允许输入30个字)