首页 > 其他分享 >逆向 | 查窗口名代码

逆向 | 查窗口名代码

时间:2024-07-06 16:08:55浏览次数:19  
标签:逆向 窗口 MAX 代码 hwnd nMaxCount PATH

逆向 | 查窗口名代码

存一份,有时候窗口名FindWindow找不到可能是少了空格之类的

#include <iostream>
#include <Windows.h>

using namespace std;

BOOL CALLBACK EnumChildProc( HWND   hwnd,  LPARAM lParam)
{
    char szTitle[MAX_PATH] = {0};
    char szClass[MAX_PATH] = {0};
    int nMaxCount = MAX_PATH;

    LPSTR lpClassName = szClass;
    LPSTR lpWindowName = szTitle;

    GetWindowTextA(hwnd, lpWindowName, nMaxCount);
    GetClassNameA(hwnd, lpClassName, nMaxCount);
    cout << "[Child window] window handle: " << hwnd << " window name: `" 
        << lpWindowName << "` class name " << lpClassName << endl; 

    return TRUE;
}


BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lParam)
{

    /*
     * Remarks
        The EnumWindows function does not enumerate child windows, 
        with the exception of a few top-level windows owned by the 
        system that have the WS_CHILD style.
     */
    char szTitle[MAX_PATH] = {0};
    char szClass[MAX_PATH] = {0};
    int nMaxCount = MAX_PATH;

    LPSTR lpClassName = szClass;
    LPSTR lpWindowName = szTitle;

    GetWindowTextA(hwnd, lpWindowName, nMaxCount);
    GetClassNameA(hwnd, lpClassName, nMaxCount);
    cout << "[Parent window] window handle: " << hwnd << " window name: `" 
        << lpWindowName << "` class name " << lpClassName << endl; 

    //EnumChildWindows(hwnd, EnumChildProc, lParam);

    return TRUE;
}


int main(int argc, char *argv[])
{
    EnumWindows(EnumWindowsProc, 0);
	system("pause");
    return 0;
} 

标签:逆向,窗口,MAX,代码,hwnd,nMaxCount,PATH
From: https://www.cnblogs.com/Mz1-rc/p/18287363

相关文章

  • STM32F1+HAL库+FreeTOTS学习6——临界段代码保护函数&任务调度器的挂起和恢复函数
    STM32F1+HAL库+FreeTOTS学习6——临界段代码保护函数临界段临界段代码保护函数任务调度器的挂起和恢复函数上一期我们学习了FreeRTOS的内核中断管理以及中断屏蔽控制函数,下面我们来学习临界端代码保护函数的使用临界段临界段也叫临界区,指的是必须完整运行完,不能被......
  • 代码随想录算法训练营第五十六天 | 98.所有可达路径
    98.所有可达路径题目链接文章讲解邻接矩阵法邻接矩阵使用二维数组来表示图结构。邻接矩阵是从节点的角度来表示图,有多少节点就申请多大的二维数组为了节点标号和下标对其,有n个节点的图申请(n+1)*(n+1)的空间vector<vector<int>>graph(n+1,vector<int>(n+1,0)......
  • 【BP时序预测】基于布谷鸟优化算法CS实现负荷数据预测单输入单输出附matlab代码
    %负荷数据预测单输入单输出(BP时序预测)%使用布谷鸟优化算法实现%假设你已经有了输入数据和对应的输出数据%输入数据应该是一个矩阵,每一行代表一个样本,每一列代表一个特征%输出数据应该是一个列向量,每个元素代表对应样本的输出%设置布谷鸟优化算法参数max_iter=......
  • 快速排序c++&&java代码实现
    快速排序的思想(基于分治法): 每次选一个基准元素x,通过一次遍历将排序表划分为独立的两部分a[l,k-1],a[k+1,r];其中左边的元素<=x,右边的1元素>x,然后递归下去,直到每个块的大小为1;c++#include<bits/stdc++.h>usingnamespacestd;voidquickSort(vector<int>&q,int......
  • 如何使用javadoc?为什么需要这个源代码文档工具
    目录一、什么是javadoc二、javadoc为什么会找不到路径三、如何解决javadoc一直找不到路径的问题一、什么是javadocJavadoc是一种用于生成Java源代码文档的工具,它可以帮助开发者生成易于阅读和理解的文档。Javadoc通过解析Java源代码中的注释,提取其中的文档信息,然后......
  • 代码随想录算法训练营第二天 | 203.移除链表元素 707.设计链表 206.反转链表
    代码随想录算法训练营第二天|203.移除链表元素707.设计链表206.反转链表进入链表章节,就要和虚拟头结点(dummyhead)打交道了,还要注意边界条件和空指针异常移除链表元素题目链接/文章讲解/视频讲解::https://programmercarl.com/0203.%E7%A7%BB%E9%99%A4%E9%93%BE%E8%A1%A......
  • 深度学习项目,代码改进,模型优化
    深度学习项目代码改进 预测模型模型优化,增加模块,python,预测,微调,融合,强化学习,深度学习,机器学习程序,环境调试,代码调通,模型优化,模型修改,时间序列,机器学习数据处理等开发工程,项目主攻:Pytorch,Tensorflow,Yolo,Unet,DNN,CNN,GAN,Transformer,matlab,训练模型,优化,price增加模......
  • 「代码随想录算法训练营」第四天 | 链表 part2
    24.两两交换链表中的节点题目链接:https://leetcode.cn/problems/swap-nodes-in-pairs/题目难度:中等文章讲解:https://programmercarl.com/0024.两两交换链表中的节点.html#算法公开课视频讲解:https://www.bilibili.com/video/BV1YT411g7br题目状态:有思路,但细节缺乏考虑个......
  • 游戏陪玩系统,生成证书和密钥库的代码分析
    游戏陪玩系统,生成证书和密钥库的代码分析生成证书与密钥库openssl命令提供了大量的工具,用以生成密钥、证书与密钥库文件,如下,是一个典型的生成密钥与证书的过程:#生成pkcs1rsa私钥opensslgenrsa-outrsa_private_key_pkcs1.key2048#生成pkcs1rsa公钥opensslrs......
  • 动手学深度学习(Pytorch版)代码实践 -循环神经网络-54~55循环神经网络的从零开始实现和
    54循环神经网络的从零开始实现importmathimporttorchfromtorchimportnnfromtorch.nnimportfunctionalasFfromd2limporttorchasd2limportmatplotlib.pyplotaspltimportliliPytorchaslp#读取H.G.Wells的时光机器数据集batch_size,num_steps......