武林外传喊话程序
系统结构:取句柄,窗口取标题,窗口取类名,枚举窗口过程,取窗口进程ID,枚举窗口,喊话,内存创建,内存释放,增加地址,删除地址,写字节集内存,运行汇编,GetWindowText,打开进程,写入内存,运行线程,关闭进程,远程创建线程,分配内存虚拟页,LocalAlloc,LocalFree,得到进程ID,GetClassName,
======窗口程序集1
| |
| |------ _按钮1_被单击
| |
| |------ 取句柄
| |
| |------ 窗口取标题
| |
| |------ 窗口取类名
| |
| |------ 枚举窗口过程
| |
| |------ 取窗口进程ID
| |
| |------ 枚举窗口
| |
| |------ 喊话
| |
| |------ 内存创建
| |
| |------ 内存释放
| |
| |------ 增加地址
| |
| |------ 删除地址
| |
| |------ 写字节集内存
| |
| |------ 运行汇编
| |
| |------ __启动窗口_创建完毕
| |
| |
======调用的Dll
| |
| |---[dll]------ GetWindowText
| |
| |---[dll]------ 打开进程
| |
| |---[dll]------ _取窗口进程ID
| |
| |---[dll]------ 写入内存
| |
| |---[dll]------ _枚举窗口
| |
| |---[dll]------ 运行线程
| |
| |---[dll]------ 关闭进程
| |
| |---[dll]------ 远程创建线程
| |
| |---[dll]------ _内存写字节集
| |
| |---[dll]------ 分配内存虚拟页
| |
| |---[dll]------ LocalAlloc
| |
| |---[dll]------ LocalFree
| |
| |---[dll]------ 得到进程ID
| |
| |---[dll]------ GetClassName
调用的DLL命令:
.DLL命令 GetWindowText, 整数型, "user32.dll", "GetWindowTextA", , 取得一个窗体的标题(caption)文字,或者一个控件的内容(在vb里使用:使用vb窗体或控件的caption或text属性) 复制到lpString的字串长度;不包括空中止字符。会设置GetLastError
.参数 句柄, 整数型, , 欲获取文字的那个窗口的句柄
.参数 文本, 文本型, , 预定义的一个缓冲区,至少有cch+1个字符大小;随同窗口文字载入
.参数 文本长度, 整数型, , lp缓冲区的长度;
.DLL命令 打开进程, 整数型, , "OpenProcess"
.参数 dwDesiredAccess, 整数型
.参数 bInheritHandle, 逻辑型
.参数 dwProcessId, 整数型
.DLL命令 _取窗口进程ID, 整数型, "user32.dll", "GetWindowThreadProcessId", , GetWindowThreadProcessId,获取与指定窗口关联在一起的一个线程和进程标识符
.参数 窗口句柄, 整数型, , hwnd,指定窗口句柄
.参数 进程标识符, 整数型, 传址, lpdwProcessId,指定一个变量,用于装载拥有那个窗口的一个进程的标识符
.DLL命令 写入内存, 逻辑型, , "WriteProcessMemory"
.参数 hProcess, 整数型
.参数 lpBaseAddress, 整数型
.参数 lpBuffer, 字节集
.参数 nSize, 整数型
.参数 lpNumberOfBytesRead, 整数型
.DLL命令 _枚举窗口, 逻辑型, , "EnumWindows"
.参数 枚举过程, 子程序指针
.参数 参数, 整数型
.DLL命令 运行线程, , , "ResumeThread"
.参数 线程句柄, 整数型
.DLL命令 关闭进程, , , "CloseHandle"
.参数 ProcessHandle, 整数型
.DLL命令 远程创建线程, 整数型, , "CreateRemoteThread"
.参数 目标对象句柄, 整数型, , hProcess
.参数 线程security描述字, 整数型, , lpThreadAttributes
.参数 线程栈大小, 整数型, , dwStackSize
.参数 指向在远程进程中执行的函数地址, 整数型, , lpStartAddress
.参数 传入参数, 整数型, , lpParameter
.参数 创建线程的其它标志, 整数型, , dwCreationFlags
.参数 线程身份标志, 整数型, , lpThreadId
.DLL命令 _内存写字节集, 整数型, "kernel32.dll", "WriteProcessMemory"
.参数 hProcess, 整数型
.参数 pBaseAddress, 整数型, , 内存地址
.参数 lpBuffer, 字节集, 传址, 数据指针
.参数 nSize, 整数型, , 长度
.参数 lpNumberOfBytesWritten, 整数型, , 实际写出长度
.DLL命令 分配内存虚拟页, 整数型, "kernel32.dll", "VirtualAllocEx", , 保留虚拟页
.参数 目标对象句柄, 整数型, , hProcess
.参数 分配文本地址, 整数型, , lpAddress
.参数 分配大小, 整数型, , dwSize
.参数 分配类型, 整数型, , flAllocationType
.参数 内存保护标志, 整数型, , flProtect
.DLL命令 LocalAlloc, 整数型, , "LocalAlloc"
.参数 uFlags, 整数型
.参数 uBytes, 整数型
.DLL命令 LocalFree, 整数型
.参数 hMem, 整数型
.DLL命令 得到进程ID, 整数型, , "GetWindowThreadProcessId"
.参数 WindowHandle, 整数型
.参数 ProcessId, 字节集
.DLL命令 GetClassName, 整数型, "user32.dll", "GetClassNameA", , 为指定的窗口取得类名 以字节数表示的类名长度;排除最后的空中止字符。零表示出错。会设置GetLastError
.参数 句柄, 整数型, , 欲获得类名的那个窗口的句柄
.参数 文本, 文本型, , 随同类名载入的缓冲区。预先至少必须分配nMaxCount+1个字符
.参数 文本长度, 整数型, , 由lpClassName提供的缓冲区长度;
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。