简单的dll加载

1.先编写DLL(add.DLL)

CMfcdllApp theApp;
extern    "C"    __declspec(dllexport)    void    Show()   //创建返回void型的dll函数
   ...{  
   AFX_MANAGE_STATE(AfxGetStaticModuleState());  
   CTest    test;  
   test.DoModal    ();  
   }  
extern    "C"    __declspec(dllexport)    char*    ShowStr()   //创建返回char*型的dll函数
   ...{  
   AFX_MANAGE_STATE(AfxGetStaticModuleState());  
 char* str ;
 str = _T("showstr");
 return str;
   }  
extern    "C"    __declspec(dllexport)    int    ShowInt()   //创建返回int型的dll函数
   ...{  
   AFX_MANAGE_STATE(AfxGetStaticModuleState());  
 int k = 1;
    return k;
   }  

2.然后编写MFC对话框程序

在事件里写入:

typedef    (WINAPI    *    TESTDLL)();   //定地dll的使用
 HINSTANCE    hmod;  
 hmod    =    ::LoadLibrary    ("mfcdll.dll");   //load dll
 if(hmod==NULL)  
 ...{  
  AfxMessageBox("Fail");  
 }  
 TESTDLL    lpproc;  
 lpproc = (TESTDLL)GetProcAddress(hmod,"ShowInt");   //调用dll函数showint
 int i;
 if(lpproc!=(TESTDLL)NULL)
 ...{ 
  i = (int)(*lpproc)();  
 }
 lpproc = (TESTDLL)GetProcAddress(hmod, "ShowStr");//调用dll函数showstr
 CString str;
 if (lpproc != (TESTDLL)NULL )
 ...{
  str = (char*)(*lpproc)();
 }
 FreeLibrary(hmod);  

别忘了把add.DLL文件放到MFC程序里!

 

本文来自优快云博客,转载请标明出处:http://blog.youkuaiyun.com/ice197983/archive/2007/03/21/1536213.aspx

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值