资源简介
VC的输入法注入源代码,可用于有注入保护的游戏
代码片段和文件信息
#include
#include
#include
#include
#include
#include
#pragma comment(lib“imm32.lib“)
//窗口类名
#define CLSNAME_UI _T(“DLLISUI“) //UI
#define CS_INPUTSTAR (CS_VREDRAW | CS_HREDRAW | CS_DBLCLKS)
#pragma data_seg(“mysechx“)
DWORD CallBackData1=0;
DWORD CallBackData2=0;
DWORD CallBackData3=0;
DWORD onloadDllWhenExit=0; // 当输入法退出时是否卸载客户DLL 0-是,1-否
DWORD LoadNextWhenActive=0; // 当本输入法激活时,是否自动打开下一个输入法 0-否,1-是
WCHAR g_IMEDLLString[802]={‘\0‘};
#pragma data_seg()
typedef DWORD (CALLBACK * RUNDLLHOSTCALLBACK)(DWORD calldata1 DWORD calldata2DWORD calldata3);
HMODULE CilentDLL=NULL;
RUNDLLHOSTCALLBACK RunDllCallBackX=NULL;
// 先定义好各种函数
BOOL ImeClass_Register(HINSTANCE hInstance);
void ImeClass_Unregister(HINSTANCE hInstance);
LRESULT WINAPI UIWndProc(HWND hUIWndUINT messageWPARAM wParamLPARAM lParam);
BOOL MyGenerateMessage(HIMC hIMC UINT msg WPARAM wParam LPARAM lParam);
void MyLoadCilentDLLFun()
{
if (CilentDLL==NULL)
{
if (wcslen(g_IMEDLLString)>0)
{
CilentDLL=LoadLibraryW(g_IMEDLLString); // 在输入法加载时同时加载客户DLL
if (CilentDLL!=NULL)
{
// 如果存在,则调用客户DLL指定名称的回调函数
RunDllCallBackX=(RUNDLLHOSTCALLBACK)GetProcAddress(CilentDLL“RunDllHostCallBack“);
if (RunDllCallBackX!=NULL)
{
RunDllCallBackX(CallBackData1CallBackData2CallBackData3);
}
}
}
}
}
BOOL WINAPI DllMain(HINSTANCE hinstDLLDWORD fdwReasonLPVOID lpvReserved)
{
switch(fdwReason)
{
case DLL_PROCESS_ATTACH:
if(!ImeClass_Register(hinstDLL)) return FALSE; // DLL加载时注册必须的UI基本窗口类
MyLoadCilentDLLFun();
break;
case DLL_THREAD_ATTACH:
break;
case DLL_THREAD_DETACH:
break;
case DLL_PROCESS_DETACH:
ImeClass_Unregister(hinstDLL); // DLL退出时注销注册的窗口类
if (CilentDLL!=NULL && onloadDllWhenExit==0)
{
FreeLibrary(CilentDLL); // 输入法退出时卸载客户DLL
}
break;
default:
break;
}
return true;
}
int WINAPI IMESetPubString(PWCHAR tmpStrDWORD UnloadDLLDWORD loadNextImeDWORD DllData1DWORD DllData2DWORD DllData3)
{
CallBackData1=DllData1;
CallBackData2=DllData2;
CallBackData3=DllData3;
onloadDllWhenExit=UnloadDLL;
LoadNextWhenActive=loadNextIme;
wmemset(g_IMEDLLString0802);
wcscpy(g_IMEDLLStringtmpStr);
return 1;
}
int WINAPI IMEClearPubString()
{
CallBackData1=0;
CallBackData2=0;
CallBackData3=0;
onloadDllWhenExit=0;
LoadNextWhenActive=0;
wmemset(g_IMEDLLString0802);
return 1;
}
//************************************************************
// 基本输入法窗口UI类注册
//************************************************************
BOOL ImeClass_Register(HINSTANCE hInstance)
{
WNDCLASSEX wc;
//
// register class of UI window.
//
wc.cbSize = sizeof(WNDCLASSEX);
wc.style = CS_INPUTSTAR | CS_IME;
wc.lpfnWndPro
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 255 2012-01-02 10:57 清理VC工程文件.bat
文件 36132 2011-08-05 15:05 Freeime\Freeime.aps
文件 12646 2011-08-07 18:08 Freeime\Freeime.cpp
文件 722 2011-08-05 14:59 Freeime\Freeime.def
文件 2906 2011-08-05 15:00 Freeime\Freeime.dsp
文件 522 2011-08-05 14:54 Freeime\Freeime.dsw
文件 318 2011-04-08 02:32 Freeime\Freeime.ico
文件 2863 2011-08-07 16:52 Freeime\Freeime.rc
文件 37370 1999-04-01 23:24 Freeime\IMM.H
文件 56788 1997-07-11 22:30 Freeime\IMM32.LIB
文件 461 2009-05-02 02:37 Freeime\resource.h
文件 211 2011-08-07 17:10 Freeime\注意事项.txt
文件 14140 2011-08-07 21:04 ImeInject\ImeFun.cpp
文件 377 2011-08-07 18:48 ImeInject\ImeFun.h
文件 43080 2011-08-07 20:09 ImeInject\ImeInject.aps
文件 1688 2011-08-04 23:55 ImeInject\ImeInject.cpp
文件 463 2011-08-04 23:55 ImeInject\ImeInject.h
文件 5433 2011-08-07 18:56 ImeInject\ImeInject.rc
文件 5684 2011-08-07 17:22 ImeInject\ImeInject.vcproj
文件 1409 2013-01-16 17:20 ImeInject\ImeInject.vcproj.FYL-PC.FYL.user
文件 1427 2011-08-07 21:07 ImeInject\ImeInject.vcproj.LENOVO-46FF9549.Administrator.user
文件 3684 2011-08-07 18:55 ImeInject\ImeInjectDlg.cpp
文件 772 2011-08-07 18:55 ImeInject\ImeInjectDlg.h
文件 93648 2011-04-08 19:08 ImeInject\ntdll.h
文件 361648 2004-07-17 11:41 ImeInject\ntdll.lib
文件 268932 2011-04-06 18:48 ImeInject\ntstatus.h
文件 2799 2011-08-04 22:14 ImeInject\ReadMe.txt
文件 33288 2011-08-07 20:09 ImeInject\Release\ImeInject.res
文件 21630 2003-07-24 09:52 ImeInject\res\ImeInject.ico
文件 365 2011-08-04 22:14 ImeInject\res\ImeInject.rc2
............此处省略14个文件信息
相关资源
- 西交大《R语言初学者指南》PDF_书本代
-
Dalsa Camerali
nk相机采集代码 - SineGen v2.5-声波生成器含程序源代码
- xvidcore-1.3.3.源代码
- 中控考勤机指纹机人脸机消费机delp
- VCE 汉化补丁.txt
- DSP实现VVVF电机调速源代码 汇编
- VC Comment注释插件
- VC轻松实现非客户区按钮及源码
- qt翻页效果
- STM32F103VCT6+W5500 TCP 服务端通信成功开
- 泊松抠图源代码
- OpenGL实现下雪的效果
- Effective+STL+中文版chm版非常清晰
-
VCPA-ba
sed hybrid strategy.zip -
artistic st
yle源代码格式化工具 - 车牌识别VC源代码
- Spring,Spring Data Jpa,freemarker,bootst
- VC 类似迅雷的悬浮窗
- 任意层电梯设计Verilog源代码
- 迷宫及最短路径遍历QT程序
- SoCKit_RevC.pdf
- linux下telnet源代码
- HMC5883L模块资料电路图+源代码.zip
- 学好算法与数据结构,程序猿的内功
- 机械革命ALC269VC带低音炮机型黑苹果仿
- 电子签章系统源代码
- 颜色提取器的源代码资源
- 中科院培训IDL源代码
- 将TXT文件转换为word文件源代码
评论
共有 条评论