欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

Windows Hook(2)调用DLL函数

发布时间:2023/12/1 53 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Windows Hook(2)调用DLL函数 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

DLL代码

#include <Windows.h>BOOL APIENTRY DllMain( HMODULE hModule,DWORD ul_reason_for_call,LPVOID lpReserved) {switch (ul_reason_for_call){case DLL_PROCESS_ATTACH:MessageBox(NULL, L"dllHook", L"Hook", MB_OK);break;case DLL_THREAD_ATTACH:case DLL_THREAD_DETACH:case DLL_PROCESS_DETACH:break;}return TRUE; }extern "C" {__declspec(dllexport) int add(int x, int y){return x + y;}__declspec(dllexport) int sub(int x, int y){return x - y;} }

exe代码

#include <Windows.h> #include <cstdio>typedef int (*func)(int a, int b); func add; func sub;int main() {HINSTANCE dllHins = LoadLibrary(L"hookNotepadDLL.dll");if (dllHins == NULL) {printf("Load Failed\n");}else {printf("Load Success\n");}add = (func)GetProcAddress((HMODULE)dllHins, "add");if (add == NULL) {printf("Get ADD function failed\n");return 1;}sub = (func)GetProcAddress((HMODULE)dllHins, "sub");if (sub == NULL) {printf("Get SUB function failed\n");return 1;}printf("%d %d\n", add(4, 5), sub(9, 4));return 0; }

结果

工具

查看dll导出的函数:dumpbin dllname /exports

总结

以上是生活随笔为你收集整理的Windows Hook(2)调用DLL函数的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。