当前位置:首页 科普知识 GetModuleHandle

GetModuleHandle

发布时间:2023-09-06 19:14:31

GetModuleHandle是一个计算机函数,功能是获取一个应用程序或动态链接库的模块句柄。只有在当前进程的场景中,这个句柄才会有效。

GetModuleHandle详细介绍

GetModuleHandle是一个计算机函数,功能是获取一个应用程序或动态链接库的模块句柄。只有在当前进程的场景中,这个句柄才会有效。

GetModuleHandle

GetModuleHandle返回值

HMODULE,如执行成功成功,则返回模块句柄。零表示失败。获取错误信息,请调用GetLastError。

GetModuleHandle参数表

lpModuleName String,指定模块名,这通常是与模块的文件名相同的一个名字。例如,NOTEPAD.EXE程序的模块文件名就叫作NOTEPAD。NULL则返回调用进程本身的句柄。

GetModuleHandle注意事项

只有欲获取的模块已映射到调用该函数的进程内,才会正确得到模块句柄。常用模块映射函数:LoadLibrary。

GetModuleHandle函数声明

GetModuleHandleC++声明

HMODULE WINAPI GetModuleHandle(

_In_opt_LPCTSTR lpModuleName

);

GetModuleHandleVB声明

Declare Function GetModuleHandle Lib "kernel32" Alias "GetModuleHandleA" (ByVal lpModuleName As String) As Long

GetModuleHandleC#声明

public static extern int GetModuleHandle(string lpModuleName);

GetModuleHandleVC声明

HMODULE GetModuleHandle(LPCTSTRlpModuleName);

GetModuleHandle

GetModuleHandle汇编声明

GetModuleHandle,lpModuleName

函数的作用是返回指定模块名的句柄,如果为NULL,则返回本模块的句柄。

返回的句柄值存放在寄存器eax中。

lpModuleName参数是一个指向含有模块名称字符串的指针;

使用举例:

.686p.xmm.mmx.model flat,stdcalloption casemap:none.dataszUserDll db 'User32.dll',0.data?hUserDllHandle dd?sbErrorinvoke ExitProcess,0start:invoke GetModuleHandle,offsetszUserDlltest eax,eaxje sbErrormov hUserDllHandle,eaxend start...

GetModuleHandle易语言声明

Ansi版本:

.版本 2

.DLL命令 GetModuleHandleA, 整数型, "kernel32.dll", "GetModuleHandleA"

.参数 lpModuleName, 文本型

GetModuleHandle

Unicode版本:

.版本 2

.DLL命令 GetModuleHandleW, 整数型, "kernel32.dll", "GetModuleHandleW"

.参数 lpModuleName, 字节集

温馨提示:
本文【GetModuleHandle】由作者 爱百科 转载提供。 该文观点仅代表作者本人, 自学教育网 信息发布平台,仅提供信息存储空间服务, 若存在侵权问题,请及时联系管理员或作者进行删除。
(c)2008-2025 自学教育网 All Rights Reserved 汕头市灵创科技有限公司
粤ICP备2024240640号-6