dreamsfly 发布留言 2008-1-22 21:29
发一个模拟键盘,鼠标,操作内存,操作窗口,操作消息的外挂专用类,以及应用实例
http://bbs.bc-cn.net/redirect.php?goto=findpost&pid=1147552&ptid=153959
这是以前发布的。1.0版本
现在发布一个新做的,暂定1.1版本
呵呵
http://www.521hn.com/soft/show.asp?id=11
童年外挂实例
dreamsfly 发布留言 2008-1-22 21:44
还有一个标准示例
不能上传了,贴个代码把
using sendkey;
引用
public key kk = new key();
实例化
**************************************************************
操作窗体
**************************************************************
pid = kk.pid("su_client.exe");
获得进程PID
key.WinFromXY wf;声明结构数组
wf = kk.findform(“窗口标题”);
根据窗口标题得到 宽,高,以及x,y信息。
kk.setwinform(窗口标题,新的高,新的宽)//改变窗体大小
kk.winText(旧的窗体标题, 新的窗体标题);//修改窗体标题
kk.showform(窗口标题)//将窗体至于屏幕最顶端
kk.findwin(窗口标题);//返回int值,得到一个窗体的句柄
**************************************************************
**************************************************************
模拟键盘
**************************************************************
winio方式
--------------------------------------
kk.sendwinio();//初始化winio
kk.MykeyDown((int)key.VirtualKeys.VK_F1);//按下F1
kk.MykeyUp((int)key.VirtualKeys.VK_F1);//放开F1
key.VirtualKeys//键盘枚举
---------------------------------------
api方式
----------------------------------
kk.Sendkey(key.VirtualKeys.VK_F8, !kk.GetState(key.VirtualKeys.VK_F8));//模拟按下F8以及弹起
------------------------------------
**************************************************************
[ 本帖最后由 dreamsfly 于 2008-1-22 21:55 编辑 [/italic]]
dreamsfly 发布留言 2008-1-22 21:53
**************************************************************
操作内存
**************************************************************
kk.getread(程序pid, 内存地址);//返回一个int值
kk.getread(程序pid, 内存地址,255);//返回一个string字符串
**************************************************************
**************************************************************
操作系统消息
**************************************************************
jbid = kk.findwin(窗口标题);//返回窗口句柄
kk.sendMessageKEY((IntPtr)jbid, (int)0x0100, key.VirtualKeys.VK_F1, -1);//jbid=窗口句柄,0x0100=按下键盘(具体参考sendMessage 参数 和 key.wMsG 枚举 ),key.VirtualKeys.VK_F1的键盘值,-1没什么解释的
kk.sendMessageKEY((IntPtr)jbid, (int)0x0101, key.VirtualKeys.VK_F1,-1);//其他同上0x0100=放开键盘
------------------------------------------------------------------
kk.sendMessageKEY((IntPtr)jbid, (int)key.wMsG.WM_MOUSEMOVE, (int)0, (y) * 256 * 256 + x);
//jbid=窗口句柄,key.wMsG.WM_MOUSEMOVE=移动鼠标,(int)0没什么解释的,(y) * 256 * 256 + x (y=y坐标,x=x坐标)
kk.sendMessageKEY((IntPtr)jbid, (int)key.wMsG.WM_LBUTTONDOWN, (int)0, (y) * 256 * 256 + x);
//jbid=窗口句柄,key.wMsG.WM_LBUTTONDOWN=按下鼠标左键,(int)0没什么解释的,(y) * 256 * 256 + x (y=y坐标,x=x坐标)
kk.sendMessageKEY((IntPtr)jbid, (int)key.wMsG.WM_LBUTTONUP, (int)0, (y) * 256 * 256 + x);
//jbid=窗口句柄,key.wMsG.WM_LBUTTONUP=放开鼠标左键,(int)0没什么解释的,(y) * 256 * 256 + x (y=y坐标,x=x坐标)
**************************************************************
**************************************************************
其他
**************************************************************
key.wMsG //枚举sendMessageKEY 的第2个参数
key.mouseeventflag//鼠标信息枚举
kk.winclose();//关闭系统
Bitmap fullphoto(int Width,int Height,int x,int y)//截取一个屏幕图像,返回Bitmap 型
Bitmap EnlargePhoto(int Width宽,int Height高,int x坐标, int y坐标, int multiple放大倍数)//放大一个屏幕区域的图像
Bitmap GetSplitPics(Bitmap bmpobj, int Width, int Height,int x, int y )//把图片按照设置分割成若干块
**************************************************************
还有一个全局键盘钩子,代码写出来了,没有想好要写什么功能
[ 本帖最后由 dreamsfly 于 2008-1-22 22:07 编辑 [/italic]]
天堂落日 发布留言 2008-1-23 18:18
楼主高手啊
下载下来研究研究
谢谢楼主
dreamsfly 发布留言 2008-1-26 21:50
呵呵,自己顶个
tu1101 发布留言 2008-9-8 13:08
好啊
板扎了啊,找了好久了
页: [1]