我正在尝试在当前进程中注入一个dll以查找不同函数的偏移量。DLL中获取函数PTR
我有我的DLL中一个简单的功能,看起来像这样:
void testfunction()
和IM试图获得通过C#应用程序的功能PTR。
public IntPtr GetFunctionPointer()
{
IntPtr hLoaded = LoadLibrary("C:\\test\\test.dll");
IntPtr functionPtr = GetProcAddress(hLoaded, "testfunction");
return functionPtr;
}
函数ptr每次返回0,即使该函数存在于dll中。 任何帮助,将不胜感激。
难道是出口? – 2014-10-11 03:02:34
你的意思是__declspec(dllexport)void testfunction()? – 2014-10-11 03:06:09
那么,那会导出一个错误名称的函数。在您的DLL上使用'dumpbin/exports'来查看实际名称。要使导出的名称的控制(防止重整),你需要使用一个模块定义文件。 – 2014-10-11 03:11:32