如何使用和获得指向桌面的句柄

如何使用和获得指向桌面的句柄,第1张

你的宠物是在桌面运行的 问题是 他是一个新的窗口 有自己的句柄

你找到桌面的句柄是没有意义的。。

hwnd = findwindows();把你QQ宠物的名字扔进去 找到的句柄才是你

这个窗口的,才可以执行 *** 作。。

enumwindows()有两个参数,一个是指向回调函数的指针,一个是用户定义的

lparam

值,

针对每个桌面窗口(或者顶层窗口)它调用回调函数一次。然后回调函数用该窗口句柄做一些处理,比如将它添加到列表中。这个方法保证枚举结果不会被窗口复杂

的层次关系搞乱,因此,一旦有了窗口句柄,我们就可以通过

getwindowtext()

得到窗口标题。

不是的,电脑桌面句柄是指电脑桌面窗口句柄,您没有看错,桌面也是一个窗口。

您要的这个菜单虽然依附在桌面也就是Explorerexe的窗口句柄下,但是这个窗口下是不只一个句柄的

例如桌面中有IE、网上邻居、我的电脑、回收站等等,这些也有它各自的句柄,

看您问这个问题,估计您的编程技术还不精深吧,如果是的话,暂时别找菜单的句柄了,那个不好找。

推荐用大漠插件dmdll(网上可以下载,百度下去一堆,注意下那种有说明文档的)

用截图的方式查找吧。把“刷新”这个截图下来,然后用findpic去查找,详细的参数看下说明文档。我个人感觉,这个插件真心不错,还可以后台运行

包含图标的窗口实际上是DesktopWindow的一个字窗口。确切地讲,Desktop Window包含一个无标题的、类名为“SHELLDLL_DefView”的子窗口,这个字窗口又包含一个无标题的、类名为“SysListView32”的子窗口——这才是那个真正包含桌面图标的窗口。 // HWN[VC++]如何得到桌面窗口的句柄(桌面图标)

你是想模拟按键么

首先要获得窗口的句柄

用下面的函数应该能找到:

FindWindow根据类名\窗口标题寻找窗口

遍历顶层窗口EnumWindows

遍历窗口回调函数EnumWindowProc

遍历父窗口的所有子窗口EnumChildWindows

返回父窗口Point处的子窗口ChildWindowFromPoint

ChildWindowFromPointEx多一个参数UINT来忽略不可见无效透明的子窗口

获取与指定窗口具有莫种关系的窗口GetWindow

获取父窗口的子窗口中Z序最大的子窗口GetTopWindow

获取指定窗口相同层次Z序差1的窗口GetNextWindow

获取桌面窗口句柄GetDesktopWindow

用SendMessage函数不需要窗口标题的,只要句柄

LRESULT

SendMessage(

HWND

hWnd,

//

handle

of

destination

window

UINT

Msg,

//

message

to

send

WPARAM

wParam,

//

first

message

parameter

LPARAM

lParam

//

second

message

parameter

);

或者用keybd_event函数,要先用SetForegroundWindow函数把目标窗口设置成前台窗口

VOID

keybd_event(

BYTE

bVk,

//

virtual-key

code

BYTE

bScan,

//

hardware

scan

code

DWORD

dwFlags,

//

flags

specifying

various

function

options

DWORD

dwExtraInfo

//

additional

data

associated

with

keystroke

);

补充:

第一个:我进入某个游戏,用CE查到内存地址后,退出游戏,再查内存地址,两个内存地址是不一样的,有什么办法可以让每次的内存地址都一样?或者说下别的解决方法?

不让每次的内存地址都一样应该是做不到的,游戏每次运行由系统分配内存,哪能让你控制啊。

第二个:我想让鼠标在内存数值到某一个数值时,鼠标移动到某点进行鼠标 *** 作,该怎么写源代码?

定义一个指针变量p,类型根据你需要的数值而定

p=该内存地址

if(p==该数值)

{

//mousemove

}

CWnd pwnd = GetDesktopWindow();

//获取当前桌面的设备上下文

CDC pdc = pwnd->GetWindowDC();

for(int x = 0; x < 600; x++)

for(int y = 0; y < 400; y++)

pdc->SetPixel(x,y,0);

我试过了,是可以画出一个600x400的黑色区域,不过很快被刷新掉了。

以上就是关于如何使用和获得指向桌面的句柄全部的内容,包括:如何使用和获得指向桌面的句柄、如何获得当前窗口的标题 或句柄、按键精灵新出的句柄怎么找等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/9628041.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存