Windows API中几个函数的总结

  [DllImport("User32.dll", EntryPoint = "FindWindow")]
        public static extern IntPtr FindWindow(String className, String captionName);
        [DllImport("User32.dll", EntryPoint = "FindWindowEx")]
        public static extern IntPtr FindWindowEx(IntPtr hwndParent, IntPtr hwndChildAfter, string lpszClass, string lpszWindow);
        [DllImport("User32.dll", EntryPoint = "SendMessage")]
        public static extern string  SendMessage(IntPtr hWnd, int Msg, int wParm, int lParm);
        [DllImport("User32.dll", EntryPoint = "GetWindowText")]
        public static extern int GetWindowText(IntPtr hwnd, StringBuilder lpString, int cch);

        public IntPtr getHandleParent(string classname, string captionname)
        {
            IntPtr handle = FindWindow(classname, captionname);
            return handle;
        }
        public IntPtr getHandleChild(IntPtr hwndparent,  string lpszclass, string lpszwindow)
        {
            IntPtr handle = IntPtr.Zero;
            if (hwndparent != IntPtr.Zero)
            {
                handle = FindWindowEx(hwndparent,handle,lpszclass, lpszwindow);

            }
            else
            {
                MessageBox.Show("没有找到子窗口");
            }
            return handle;
        }

        public string getTxt(IntPtr ChildHandle)
        {
            StringBuilder s = new StringBuilder(512);
            if (ChildHandle != IntPtr.Zero)
            {
                int i = GetWindowText(ChildHandle, s, s.Capacity);

            }
            else
            {
                MessageBox.Show("子窗口中没有内容");
            }
            return s.ToString();

        }

Windows API中几个函数的总结

时间: 2024-10-11 19:04:46

Windows API中几个函数的总结的相关文章

windows API中CreateWindow()函数详解

CreateWindow函数详解 在注册完窗口类后就需要进行窗口的创建,用到的函数理所当然就是CreateWindow(), 而这个函数是基于窗口类的,所以还需要指定几个参数来制定特定的窗口.而且像一些不带边框的窗口是怎么创建的也是具有相当的技巧的,就是创建的是不带标题和边框的窗口,然后自己在客户区绘制程序的内容,能够制作个性化的应用程序. API解释 该函数创建一个重叠式窗口.弹出式窗口或子窗口.它指定窗口类,窗口标题,窗口风格,以及窗口的初始位置及大小(可选的).函数也指该窗口的父窗口或所属

Windows API中的坑

本文主页链接:Windows API中的坑 ExpandEnvironmentStrings 风险: 进程会继承其父进程的环境变量,在展开如%APPDATA%等目录时,有可能父进程对此环境变量进行过修改,那么可能你获取的就不是你想要的当前SESSION的%APPDATA%了. 建议: 使用SHGetFolderPath系列函数来做这件事. GetModuleFileName 风险: 在DLL中调用时,若传入的instance参数为NULL,那获取的将是加载DLL的进程的EXE的路径,若需要获取D

Windows API中的数据结构

值得说明的是,win32开发是C语言编程,因此,搞明白数据类型还是非常重要的.Windows API因为历史原因或者为了方便在windows.h中将一些数据类型用typedef或者define宏重新进行定义. UINT表示C语言中的无符号整型unsigned int PSTR表示字符串指针char * WPARAM在16位时期的Windows中表示unsigned short int,而现在都是UINT LPARAM表示long WndProc函数的返回类型LRESULT实际上就是long 入口

Windows API——进程和线程函数

CancelWaitableTimer 功能:这个函数用于取消一个可以等待下去的计时器操作.计时器保持它当前的状态,而且除非用SetWaitableTimer函数明确启动,否则它不会重新启动 返回值:非零表示成功,零表示失败.会设置GetLastError 注意:适用Windows NT平台 CallNamedPipe 功能:这个函数由一个希望通过管道通信的一个客户进程调用 返回值:非零表示成功,零表示失败.会设置GetLastError ConnectNamedPipe 功能:指示一台服务器等

在VBA中使用Windows API

VBA是一种强大的编程语言,可用于自定义Microsoft Office解决方案.通过使用VBA处理一个或多个Office应用程序对象模型,可以容易地修改Office应用程序的功能或者能够使两个或多个Office应用程序协同工作以完成单个应用程序无法完成的任务.然而,使用VBA仅能控制操作系统的一小部分.Windows API提供了控制操作系统绝大多数方面的功能.下面,介绍在VBA中使用Windows API的一些知识. 理解APIs API只是一组函数,可用于处理组件.应用程序或操作系统.通常

Windows API 错误码

在多数情况下,windows API在发生错误时很少抛出异常,多数是通过函数返回值进行处理.(windows api中无返回值的函数很少.) windows api错误处理通常按照以下方式:首先api函数返回特殊的值,表明函数内部发生错误:然后调用方可以使用GetLastError获得对应的错误码. 通常情况下windows api按照返回类型可以分为以下几类: 返回值为BOOL类型.有错误发生,返回值为0,否则返回非零值. 返回值为HANDLE类型.有错误发生时,返回NULL或INVALID_

C、C++控制台程序、Windows API程序、MFC程序理解与比较

在编程语言中,函数是一个很重要的概念,其身影无处不在.在面向过程的编程方式中,函数更是程序的基本构建模块,在面向对象的编程方式中,函数演变为类或对象的成员(当然也可以使用与类无关的函数).函数由函数头和函数体组成.函数头包括域属性(如external.static或类域).返回值类型.函数名.及参数.域属性包括其在多文件编程中的可见范围,是否是属于某一个类的成员?返回值类型是指函数返回的值的具体数据类型(可以理解为函数输出的一部分).函数名是函数保存在内存代码区的首地址,用于函数的调用及函数指针

Zookeeper C API 指南三(回调函数)(转)

2013-02-21 12:54 by Haippy, 9237 阅读, 0 评论, 收藏, 编辑 接上一篇<Zookeeper C API 指南二(监视(Wathes), 基本常量和结构体介绍)>,本文重点介绍 Zookeeper C API 中的各种回调函数. Zookeeper C API 中各种回调函数简介 在具体介绍 Zookeeper C API 之前,首先介绍一下 Zookeeper C API 中的各种回调函数的原型: 监视函数(watch function)原型 typede

Windows系统调用中API的3环部分(依据分析重写ReadProcessMemory函数)

Windows内核分析索引目录:https://www.cnblogs.com/onetrainee/p/11675224.html Windows系统调用中API的3环部分 一.R3环API分析的重要性 Windows所提供给R3环的API,实质就是对操作系统接口的封装,其实现部分都是在R0实现的. 很多恶意程序会利用钩子来钩取这些API,从而达到截取内容,修改数据的意图. 现在我们使用olldbg对ReadProcessMemory进行跟踪分析,查看其在R3的实现,并根据我们的分析来重写一个