1.    函数的声明:

Declare Function

FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long

这个函数有两个参数,第一个是要找的窗口的类,第二个是要找的窗口的标题。在搜索的时候不一定两者都知道,但至少要知道其中的一个。有的窗口的标题是比较容易得到的,如"计算器",所以搜索时应使用标题进行搜索。但有的软件的标题不是固定的,如"记事本",如果打开的文件不同,窗口标题也不同,这时使用窗口类搜索就比较方便。如果找到了满足条件的窗口,这个函数返回该窗口的句柄,否则返回0。

前面提到的VB的FindWindow()函数的声明将两个参数都定义为String类型,而在实际使用过程中,如果我们忽略某个参数就将该参数的定义又As String改为As Any。这里的As Any相当于C语言中的强制类型转换。例如,如果我们忽略窗口的类,就将定义修改如下:

Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As Any, ByVal lpWindowName As String) As Long

然后,在调用时使用如下语句:

hwndCalc = FindWindow(0&, "计算器")

这里的0&就表示忽略类名。需要注意的是FindWindow(0&, "计算器")和FindWindow("", "计算器")有两种完全不同的含义,前者表示忽略窗口的类,而后者表示窗口的类是个空串。类似的,我们也可以忽略标题而搜索指定的类。

从上面的讨论中可以看出,如果要搜索的外部程序的窗口标题比较容易得到,问题是比较简单的。可如果窗口的标题不固定或者根本就没有标题,怎么得到窗口的类呢?如果你安装了Visual C++,你可以使用其中的Spy++(如果没有VC++,在VB的盘上也可以找到Spy),在Spy++中有一个FindWindow工具,它允许你使用鼠标选择窗口,然后Spy++会显示这个窗口的类。

2.  The FindWindow function retrieves a handle to the top-level window whose class name and window name match the specified strings. This function does not search child windows. This function does not perform a case-sensitive search.

FindWindow函数根据给定的窗体类名称、窗体名称的字符串搜索父窗体并返回其窗体句柄。这个函数并不搜索子窗体。这个函数并不完成一个事件感知的搜索。

To search child windows, beginning with a specified child window, use the FindWindowEx function.

要搜索给定窗体的子窗体,使用FindWindowEx函数。

Syntax

语法

HWND FindWindow(

LPCTSTR lpClassName,

LPCTSTR lpWindowName

);

Parameters

参数:

lpClassName

[in] Pointer to a null-terminated string that specifies the class name or a class atom created by a previous call to the RegisterClass or RegisterClassEx function. The atom must be in the low-order word of lpClassName; the high-order word must be zero.

[输入]一个以零作为终结符的字符串指针,给定窗体的类名称或由先前执行RegisterClass或RegisterClassEx函数创建的类原子,类原子的低位两个字节必须是lpClassName参数,高位两个字节必须是零。

If lpClassName points to a string, it specifies the window class name. The class name can be any name registered with RegisterClass or RegisterClassEx, or any of the predefined control-class names.

<12>

【发表评论0条 】

find函数的使用方法及实例 c语言,VC编程中FindWindow函数的用法相关推荐

  1. vlookup使用步骤_Excel Vlookup函数的使用方法及实例图解

    日常工作中,我们常常会用到WORD.Excel.PPT等相关办公软件,今天UU就为大家介绍一下其中Excel的相关用法,例如Excel Vlookup函数的使用方法及实例图解,这方面的内容也是EXCE ...

  2. VLookup怎么用详细步骤?VLookup函数的使用方法及实例

    VLookup函数是Excel中的一个纵向查找函数,功能是按列查找,特别是对于多表格查找比较实用,当我们在一个数据满满的表格中想要整理出一部分的数据,这个时候VLookup函数就起到非常关键的作用了, ...

  3. vlookup使用步骤_vlookup函数怎么使用_vlookup函数的使用方法及实例 - 系统家园

    vlookup函数是一个非常强大的函数,在办公中会经常使用到,根据使用的情况可以做到不一样的效果,使用方便.很多用户不知道怎么使用,下面来看看想想的使用方法吧. vlookup函数的使用方法及实例 ( ...

  4. countif函数的使用方法及实例视频教程

    countif函数的使用方法及实例视频教程 COUNTIF函数作用是:计算单元格区域中满足给定条件的单元格个数,COUNTIF函数也是单条件,函数语法:COUNTIF(区域,条件) 第一个参数:区域: ...

  5. python中sum函数的使用方法及实例_sum函数的使用方法及实例

    在我很重要的人.QQ相册上看到的英文. BRO有以下两种意思: 1.BRO是brother的简称,意思是兄弟,哥们.是口语中的简称.类似的还有"sister"姐妹的简称为" ...

  6. 浅谈windows 编程中SendMessage函数的妙用!!!

    windows编程中SendMessage函数是非常重要的,而且这个对于理解windows的消息机制也很重要.本文用代码的方式实现了一些功能,借以说明此函数之妙用.说明不当之处,希望批评指正,谢谢! ...

  7. SOCKET编程中,select()函数的作用

    SOCKET编程中,select()函数的作用Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如connect.accep ...

  8. 结构体自定义指针函数c语言,C语言结构体中的函数指针

    C语言结构体中的函数指针 C语言结构体中的函数指针内容由小编收集整理,希望对您的 学习有所帮助!更多内容请关注应届毕业生考试网! 结构体是由一系列具有相同类型或不同类型的数据构成的数据集合.所以,标准 ...

  9. C语言结构体中定义函数指针详解

    C语言结构体中定义函数指针详解 结构体指针函数应用场景之一--驱动程序编写 结构体的一些基本用法 形式1:先定义结构体类型,再定义变量 形式2:在定义类型的同时定义变量 形式3:直接定义变量,用无名结 ...

最新文章

  1. bug修复录-qq浏览器中post请求时body为空
  2. 乐源机器人优点跟缺点_机床实现自动化上下料选桁架机械手还是关节机器人好?...
  3. @Autowired和@Resouce的区别
  4. [CODEVS 1301] 任务分配
  5. 对称加密算法原理--OpenSSL演示、iOS代码运用及CCCrypt安全隐患
  6. 如何查看apache,php,mysql的编译参数
  7. 成功男士的健康心理特征
  8. 宇轩网络面试题目PHP,二十道接地气的php面试题,让你直接通过面试!就此奉上~...
  9. 读者福利:复盘2018上半年精选文章,还有礼品等着你!
  10. 芜湖计算机专业哪个学校最好,芜湖IT行业那么火,到底哪些人适合学IT呢?
  11. cognos安装过程各种问题跟解决方法
  12. Hadoop2 实战系列之1 -- Hortonworks Sandbox的安装和使用
  13. innobackupex 恢复到mysql目录_innobackupex备份mysql恢复后迁移到新的mysql实例
  14. 深度学习-文档检测方案整理
  15. ue编辑器编辑 html文件夹,ue编辑器使用教学,轻松编辑文本和项目
  16. oracle数据库中的同义词,Oracle创建数据库同义词
  17. 帝国PHP二次开发,帝国CMS二次开发基本问题汇总
  18. 线上问题处理1---CPU飙高问题定位
  19. MWORKS来了(一)| 体验焕然一新的智能建模
  20. 天河二号属于微型计算机吗,【单选题】我国的“天河二号”计算机在规模上属于( )。 A. 巨型机 B. 大型机 C. 微型机 D. 工作站...

热门文章

  1. python 批量把xls,csv文件格式换转为xlsx格式
  2. 光盘安装win10原版系统教程
  3. 自学软件测试需要多久?怎么自学软件测试?自学软件测试可以找到工作吗? 绝对干货!
  4. 娱乐行业怎么使用虚拟机器人提升财务工作效率
  5. 继《羊了个羊》后又一个好玩的小游戏
  6. Pandas数据分析实战 — 复购率指标计算
  7. CentOS7重置root密码
  8. 小程序计算两点之间距离
  9. git 根据tag切换分支
  10. 如何在java中生成pdf