GetProcAddress有的程序用kernel做参数 有的用自己的dll做参数,什么时候用自己的dll 什么时候用kernel

来源:百度知道 编辑:UC知道 时间:2024/06/03 10:51:37
如果我要用LoadLibraryA就要调用kernel吗?还有我自己编写的dll的内部函数系统可以调用吗,系统要识别我的dll是不是前提是我的dll要有导出函数呢? 谢谢

如果你想调用系统的api,可以用kernel来定位函数入口
如果想调用自己编写的dll中的导出函数,就用自己dll呗

其实KERNEL.DLL 包含的只是 stub 函数。这些 stub 函数调
用 NTDLL.DLL 中的相应的函数,这些函数又转而调用内核中的系统调用代码。题外话了~
------------------------------------------------
LoadLibraryA是ascii版本的LoadLibrary函数,不支持unicode.调用任何dll,不管是自己写的还是系统的都是LoadLibrary->GetProcAddress->FreeLibrary.

不是系统要识别你的dll,是你自己的程序要加载你的dll,一定要知道导出函数的原型才可以调用的,当然我们讨论的只是显式调用

恕我直言,你对windows编程的概念结构不是特别清晰,建议你读读<<windows核心编程>>这本书,相信会有帮助的