怎样把一个dll加载到一个exe的进程里面? 例如,我有一个mys.dll的文件。我想把这个dll的文件加载到app.exe这个程序的进程里面,请问怎么做? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 app.exe的源代码中导入(#import),并在需要用的地方直接调用DLL导出的方法即可 看微软的detours里面的setdll例子。 //假如你Dll里有一个函数为: int DllFunc(int,int); int sum; typedef int (*TestFunc)(int,int); TestFunc Calcsum; HINSTANCE hLibrary; hLibrary = LoadLibrary(TEXT("Hello.dll"));//加载Hello.dll if(hLibrary) { Calcsum=(TestFunc)GetProcAddress(hLibrary,TEXT("DllFunc"));//获得DllFunc函数的地址 } sum = Calcsum(3,8);//调用函数 FreeLibrary(hLibrary);//释放hLibrary,注意,FreeLibrary调用后不能再调用Calcsum函数了,否则将会出现 //内存访问出错的提示。 //现在你可以试试 如果app.exe文件是你自己的,就加载,如果没源码就HOOK或者注入 垂直滚动条滚动的问题 关于用GetProcAddress函数返回后的函数,调用后的返回值处理问题` 请问:学习网络编程要掌握其它什么知识吗? 请问一个关于outlook界面的问题? 请教大家一个问题 怎样才能让程序只有一个实例在运行? 哪里有MS ActiveX SDK可以下载,MSDN上找不到,谢谢 不会就问!如果我在cformview上放了控件,我想一改变就马上得出这个控件新的值,怎么做阿? GDI+,Graphics::DrawString函数遇到的一个问题。 关于取得句柄的问题,一定给分! 消息发送问题 串口接收数据处理
int sum;
typedef int (*TestFunc)(int,int);
TestFunc Calcsum;
HINSTANCE hLibrary;
hLibrary = LoadLibrary(TEXT("Hello.dll"));//加载Hello.dll
if(hLibrary)
{
Calcsum=(TestFunc)GetProcAddress(hLibrary,TEXT("DllFunc"));//获得DllFunc函数的地址
}
sum = Calcsum(3,8);//调用函数
FreeLibrary(hLibrary);//释放hLibrary,注意,FreeLibrary调用后不能再调用Calcsum函数了,否则将会出现
//内存访问出错的提示。
//现在你可以试试