易语言Hook GetLocalTime问题
请问一下虫子师傅,这种带有数据类型的API,要怎么Hook?@ 揰掵佲
.版本 2
.支持库 spec
.程序集 窗口程序集_启动窗口
.子程序 __启动窗口_创建完毕
.局部变量 局部_System, SYSTEMTIME
GetLocalTime (局部_System)
调试输出 (“未Hook”, 局部_System.wYear, 局部_System.wMonth, 局部_System.wDay, 局部_System.wHour, 局部_System.wMinute, 局部_System.wSecond, 局部_System.wDayOfWeek, 局部_System.wMilliseconds)
APIHOOK.安装Hook_API_Name2 (“kernel32.dll”, “GetLocalTime”, &MyGetLocalTime)
GetLocalTime (局部_System)
调试输出 (“Hook”, 局部_System.wYear, 局部_System.wMonth, 局部_System.wDay, 局部_System.wHour, 局部_System.wMinute, 局部_System.wSecond, 局部_System.wDayOfWeek, 局部_System.wMilliseconds)
.子程序 MyGetLocalTime
.参数 lpSystemTime, 整数型, , 当变量设为整数型的时候,为指针
.局部变量 局部_System, SYSTEMTIME
局部_System.wYear = 2008
局部_System.wMonth = 11
局部_System.wDay = 1
局部_System.wHour = 5
局部_System.wMinute = 15
局部_System.wSecond = 57
局部_System.wDayOfWeek = 1
局部_System.wMilliseconds = 50
RtlMoveMemory (lpSystemTime, 局部_System, LocalSize (局部_System))' 自定义的时间复制到指针中,完成赋值
.版本 2
.DLL命令 GetLocalTime, , "kernel32", "GetLocalTime", , 在lpSystemTime结构中装载本地日期和时间
.参数 lpSystemTime, SYSTEMTIME, , SYSTEMTIME,用于装载本地时间的结构;
.DLL命令 RtlMoveMemory, , "kernel32", "RtlMoveMemory"
.参数 pDest, 整数型
.参数 pSrc, SYSTEMTIME
.参数 ByteLen, 整数型
.DLL命令 LocalSize, 整数型, "kernel32", "LocalSize", , 返回本地内存块大小
.参数 hMem, SYSTEMTIME
.版本 2
.数据类型 SYSTEMTIME
.成员 wYear, 短整数型
.成员 wMonth, 短整数型
.成员 wDayOfWeek, 短整数型
.成员 wDay, 短整数型
.成员 wHour, 短整数型
.成员 wMinute, 短整数型
.成员 wSecond, 短整数型
.成员 wMilliseconds, 短整数型
揰掵佲 发表于 2016-9-20 21:05
.版本 2
.支持库 spec
谢谢虫子师傅的教育 看看你的分享
页:
[1]