如何在其他程序的窗口上创建按钮并使之能响应

烽火犬舍

烽火犬舍

2016-01-29 11:51

如何在其他程序的窗口上创建按钮并使之能响应,如何在其他程序的窗口上创建按钮并使之能响应

如何在其他程序的窗口上创建按钮并使之能响应
作者:ac952_z_cn

源代码下载

环境:Windows NT/2000

实现方法:采用将动态连接库注入到其他进程中的方法来实现。

    为了便于选择窗口,我借用了另一个程序"2000下显示带*号"来选择窗口。
如果要在98下实现你可用钩子同样实现。
程序运行界面如图一: 图一
将动态连接库注入其他进程的代码如下:
BOOL WINAPI RT_CTRL_BTN(LPCSTR lpszLibFile, HWND hWnd, DWORD dwID, LPRECT pRtBtn, LPCTSTR szCaptionBtn){try {DWORD dwProcessID;GetWindowThreadProcessId(hWnd, &dwProcessID);HANDLE hProcess = OpenProcess( PROCESS_CREATE_THREAD | PROCESS_VM_OPERATION |PROCESS_VM_WRITE | PROCESS_VM_READ, FALSE, dwProcessID );if (!hProcess){return FALSE;}INJECT_DLL InjectInfo;InjectDLL_Info(&InjectInfo, lpszLibFile, hWnd, dwID, pRtBtn, szCaptionBtn);LPBYTE lpThreadAddr=(LPBYTE)::VirtualAllocEx(hProcess, NULL, MAXINJECTSIZE, MEM_COMMIT, PAGE_EXECUTE_READWRITE);LPINJECT_DLL param = (LPINJECT_DLL) VirtualAllocEx( hProcess, 0, sizeof(INJECT_DLL), MEM_COMMIT, PAGE_READWRITE );WriteProcessMemory(hProcess, lpThreadAddr,&RemoteControlThread,MAXINJECTSIZE, 0);WriteProcessMemory( hProcess, param, &InjectInfo, sizeof(InjectInfo), 0 );DWORD dwThreadId;HANDLE hThread = ::CreateRemoteThread(hProcess,NULL,0,(unsigned long (__stdcall *)(void *))lpThreadAddr,param, 0, &dwThreadId);if (!hThread){CloseHandle(hProcess);VirtualFreeEx( hProcess, lpThreadAddr, 0, MEM_RELEASE );VirtualFreeEx( hProcess, param, 0, MEM_RELEASE );return FALSE;}else {CloseHandle(hThread);CloseHandle(hProcess);VirtualFreeEx( hProcess, lpThreadAddr, 0, MEM_RELEASE );VirtualFreeEx( hProcess, param, 0, MEM_RELEASE );}}catch (...){return FALSE;}return TRUE;}
环境:win2000 professional + VC6.0+SP5 + PlatformSDK 2001.8
展开更多 50%)
分享

猜你喜欢

如何在其他程序的窗口上创建按钮并使之能响应

C语言教程 C语言函数
如何在其他程序的窗口上创建按钮并使之能响应

如何在Word文档窗口添加按钮?

word
如何在Word文档窗口添加按钮?

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

如何在MAC系统Finder窗口上建立软件快捷键

电脑入门
如何在MAC系统Finder窗口上建立软件快捷键

WinPE如何安装在其他分区

电脑入门
WinPE如何安装在其他分区

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

如何在C#中播放AVI短片并使背景透明

编程语言 网络编程
如何在C#中播放AVI短片并使背景透明

Authorware应用按钮响应

Authorware 设计软件 平面设计软件 广告设计软件
Authorware应用按钮响应

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

PSV《高达破坏者2》全新卡CD硬直流BUG套解析

PSV《高达破坏者2》全新卡CD硬直流BUG套解析

美化你的应用程序的外观界面

美化你的应用程序的外观界面
下拉加载更多内容 ↓