文档章节

C#中使用API函数FINDWINDOW查找窗体

pearlongs
 pearlongs
发布于 2015/01/22 10:38
字数 195
阅读 17
收藏 0

引用:
using System.Runtime.InteropServices;

主体代码:
public partial class SimulateInput : Form
{
    public SimulateInput()
    {
        InitializeComponent();
    }
    [DllImport("USER32.DLL")]
    public static extern IntPtr FindWindow(string lpClassName, string lpWindowName);

    private void button1_Click(object sender, EventArgs e)
    {
        if (FindWindow("OpusApp", null) != IntPtr.Zero)
        {
            MessageBox.Show("Find it");

        }
        else
        {
            MessageBox.Show("Not Find");
        }

    }
}

API函数FINDWINDOW有两个参数,在上述示例代码中也可把此函数部分替换为以下内容:

if (FindWindow("OpusApp", "文档1 - Microsoft Word") != IntPtr.Zero)

if (FindWindow(null, "文档1 - Microsoft Word") != IntPtr.Zero)

对于其中的类名(如:OpusApp)及窗体名(如:文档1 - Microsoft Word)的获取,可通过visual studio tools的Spy++来实现:监视->窗口中找到要Find的窗口,右键->属性打开“属性检查器”,在此窗口中可获取类名、窗体名等。

本文转载自:http://www.abcd9.com/?post=315

共有 人打赏支持
pearlongs
粉丝 0
博文 12
码字总数 2365
作品 0
襄樊
私信 提问
c# 中如何定义和接收消息

在C#中目前我还没有找到发送消息的类成员函数,所以只能采用通过调用WIN 32 API 的 SendMessage() 函数实现。由于 SendMessage的参数中需要得到窗体的句柄(handler) ,所以又要调用另一个API...

晨曦之光
2012/03/09
71
0
C#查找指定窗口的子窗口的句柄

using System.Collections.Generic;using System.Linq;using System.Text;using System.Runtime.InteropServices; namespace Util{...

u013934107
2018/04/26
0
0
转] C#中发送消息给指定的窗口,以及接收消息

原文 C#中发送消息给指定的窗口,以及接收消息 在协同标绘窗口里拦截消息的函数:   FindWindow()函数的用法。要在C#里使用该API,写出FindWindow()函数的声明: [DllImport("coredll.dll"...

橘子红了呐
2017/11/15
0
0
C#中使用自定义消息

消息发送方 一、引入命名空间 using System.Runtime.InteropServices; 二、消息定义 //自定义的消息 public const int USER = 0x500; public const int MYMESSAGE = USER + 1; 三、自定义结构...

ucliaohh
2015/09/02
60
0
GetWindowText 卡死

今天因为业务需要封装了一个函数: int GenHwndByTitle(CString title,vector<HWND>& hwnds){ int nCount = 0; // 获得首个handle. HWND h = FindWindow(0,0); // 循环查找直到找到为给定进程......

阳666
2016/03/25
49
0

没有更多内容

加载失败,请刷新页面

加载更多

毕业季,我的Linux求职之路

秋招终于告一段落了,本硕的七年求学之路也快画上了句号。回首求职的这一段日子,痛苦并快乐着。感谢所有陪伴着我走过这一段路程的同学,所有的辛酸都值得铭记。求职的过程中在网上看了很多的...

linux-tao
22分钟前
0
0
Mybatis动态语句,if test字符串不用进行null判断

描述:根据creator列进行过滤获取image表的数据。 代码如下: @Select("<script>" + " select * from image " + " <where>" + " <if test='isAllCreator != 1'> ......

Coder顾
41分钟前
0
0
写了2年python,知道 if __name__ == '__main__' 什么意思吗?

相信刚接触Python的你一定有过如此经历,把所有的代码都写在 if __name__ == '__main__'下,因为有人告诉你,这样比较符合 Pythonista 的代码风格。 殊不知这段代码的意义并不是一定要存在于...

上海小胖
49分钟前
4
0
zkong笔记18

这两天的主要工作: Elasticsearch初探 接受ESL的超管功能 ERP开源系统调研

莫在全
52分钟前
1
0
tpcc-mysql的安装和使用

# tpcc-mysql的安装和使用 前言 公司要做Mysql方面性能调优,大概浏览一下Mysql一些参数设置后,想开始尝试进行调整测试。但发现一个问题,测试缺乏标准。所以需要一些基准测试标准或者工具。...

紫暘
57分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部