易语言枚举卸载消息钩子源码
系统结构:枚举消息钩子,置超级列表框整行红色,提升进程权限,GetSharedInfoAddress,系统是否支持,取指针_整数型,取指针_tagOUTPUTINFO,取进程路径,修正路径,取系统目录,十六到十,api_LookupPrivilegeValue,api_AdjustTokenPrivileges,api_GetCurrentProcess,api_OpenProcessToken,GetProcAddress,GetModuleHandle,TotagSymbolCode,TotagSHAREDINFO,TotagSERVERINFO,TotagHANDLEENTRY,GetVersionExA,OpenProcess,Api_GetProcessImageFileName,EnumProcessModules,GetModuleFileNameEx,CloseHandle,GetSystemDirectoryA,StrToIntEx,UnhookWindowsHookEx,
======窗口程序集1
| |
| |------ _按钮1_被单击
| |
| |------ __启动窗口_创建完毕
| |
| |------ __启动窗口_将被销毁
| |
| |------ 枚举消息钩子
| |
| |------ 置超级列表框整行红色
| |
| |------ _超级列表框1_右键单击表项
| |
| |------ _卸载钩子_被选择
| |
| |
======功能_程序集
| |
| |------ 提升进程权限
| |
| |------ GetSharedInfoAddress
| |
| |------ 系统是否支持
| |
| |------ 取指针_整数型
| |
| |------ 取指针_tagOUTPUTINFO
| |
| |------ 取进程路径
| |
| |------ 修正路径
| |
| |------ 取系统目录
| |
| |------ 十六到十
| |
| |
======调用的Dll
| |
| |---[dll]------ api_LookupPrivilegeValue
| |
| |---[dll]------ api_AdjustTokenPrivileges
| |
| |---[dll]------ api_GetCurrentProcess
| |
| |---[dll]------ api_OpenProcessToken
| |
| |---[dll]------ GetProcAddress
| |
| |---[dll]------ GetModuleHandle
| |
| |---[dll]------ TotagSymbolCode
| |
| |---[dll]------ TotagSHAREDINFO
| |
| |---[dll]------ TotagSERVERINFO
| |
| |---[dll]------ TotagHANDLEENTRY
| |
| |---[dll]------ GetVersionExA
| |
| |---[dll]------ OpenProcess
| |
| |---[dll]------ Api_GetProcessImageFileName
| |
| |---[dll]------ EnumProcessModules
| |
| |---[dll]------ GetModuleFileNameEx
| |
| |---[dll]------ CloseHandle
| |
| |---[dll]------ GetSystemDirectoryA
| |
| |---[dll]------ StrToIntEx
| |
| |---[dll]------ UnhookWindowsHookEx
调用的DLL命令:
.DLL命令 api_LookupPrivilegeValue, 逻辑型, "advapi32.dll", "LookupPrivilegeValueA"
.参数 lpSystemName, 文本型
.参数 lpName, 文本型
.参数 lpLuid, LuID, 传址
.DLL命令 api_AdjustTokenPrivileges, 逻辑型, "advapi32.dll", "AdjustTokenPrivileges"
.参数 TokenHandle, 整数型
.参数 DisableAllPrivileges, 整数型
.参数 NewState, TOKEN_PRIVILEGES, 传址
.参数 BufferLength, 整数型
.参数 PreviousState, TOKEN_PRIVILEGES, 传址
.参数 ReturnLength, 整数型, 传址
.DLL命令 api_GetCurrentProcess, 整数型, "kernel32.dll", "GetCurrentProcess"
.DLL命令 api_OpenProcessToken, 整数型, "advapi32.dll", "OpenProcessToken"
.参数 ProcessHandle, 整数型
.参数 DesiredAccess, 整数型
.参数 TokenHandle, 整数型, 传址
.DLL命令 GetProcAddress, 整数型, "kernel32.dll", "GetProcAddress"
.参数 hModule, 整数型
.参数 lpProcName, 文本型
.DLL命令 GetModuleHandle, 整数型, , "GetModuleHandleA"
.参数 lpLibName, 文本型
.DLL命令 TotagSymbolCode, , "kernel32", "RtlMoveMemory"
.参数 目的地址, tagSymbolCode, , any
.参数 源地址, 整数型, , any
.参数 复制尺寸, 整数型
.DLL命令 TotagSHAREDINFO, , "kernel32", "RtlMoveMemory"
.参数 目的地址, tagSHAREDINFO, , any
.参数 源地址, 整数型, , any
.参数 复制尺寸, 整数型
.DLL命令 TotagSERVERINFO, , "kernel32", "RtlMoveMemory"
.参数 目的地址, tagSERVERINFO, , any
.参数 源地址, 整数型, , any
.参数 复制尺寸, 整数型
.DLL命令 TotagHANDLEENTRY, , "kernel32", "RtlMoveMemory"
.参数 目的地址, tagHANDLEENTRY, , any
.参数 源地址, 整数型, , any
.参数 复制尺寸, 整数型
.DLL命令 GetVersionExA, 整数型, "kernel32", "GetVersionExA", , 在一个OSVERSIONINFO结构中载入与平台和操作系统有关的版本信息 非零表示成功,零表示失败
.参数 版本, 版本信息_, , OSVERSIONINFO,用于装载版本信息的结构。在正式调用函数之前,必须先将这个结构的dwOSVersionInfoSize字段设为结构的大小(148);
.DLL命令 OpenProcess, 整数型, "kernel32.dll", "OpenProcess", , 将句柄返回给过程对象
.参数 进程对象, 整数型, , dwDesiredAccess
.参数 继承句柄, 整数型, , bInheritHandle
.参数 进程标识符, 整数型, , dwProcessId
.DLL命令 Api_GetProcessImageFileName, 整数型, "psapi.dll", "GetProcessImageFileNameA"
.参数 hProcess, 整数型, , ""
.参数 lpImageFileName, 文本型, 传址, ""
.参数 nSize, 整数型, , ""
.DLL命令 EnumProcessModules, 整数型, "psapi.dll"
.参数 hProcess, 整数型, , ""
.参数 lphModule, 整数型, 传址, ""
.参数 cb, 整数型, , ""
.参数 lpcbNeeded, 整数型, 传址, ""
.DLL命令 GetModuleFileNameEx, 整数型, "psapi.dll", "GetModuleFileNameExA"
.参数 hProcess, 整数型, , ""
.参数 hModule, 整数型, , ""
.参数 lpFileName, 文本型, 传址, ""
.参数 nSize, 整数型, , ""
.DLL命令 CloseHandle, 整数型, "kernel32", "CloseHandle", , 关闭一个内核对象。其中包括文件、文件映射、进程、线程、security和同步对象等。涉及文件处理时,这个函数通常与vb的close命令相似。应尽可能的使用close,因为它支持vb的差错控制。注意这个函数使用的文件句柄与vb的文件编号是完全不同的 非零表示成功,零表示失败。会设置GetLastError
.参数 对象句柄, 整数型, , 欲关闭的一个对象的句柄;
.DLL命令 GetSystemDirectoryA, 整数型, , "GetSystemDirectoryA"
.参数 lpbuffer, 文本型
.参数 nsize, 整数型
.DLL命令 StrToIntEx, 整数型, "shlwapi.dll", "StrToIntExA"
.参数 pszString, 文本型
.参数 dwFlags, 整数型
.参数 piRet, 整数型, 传址
.DLL命令 UnhookWindowsHookEx, 整数型, "user32.dll", "UnhookWindowsHookEx", , UnhookWindowsHookEx
.参数 钩子句柄, 整数型, , hHook
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。