我正在嘗試在當前進程中注入一個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