tempad
Readygo技术搜索引擎 >>游戏开发 >> 如何让自己写的DLL只允许静态链接

如何让自己写的DLL只允许静态链接

Readygo技术搜索引擎 网络搜索 efish 2008-1-17 1:59:31

如何让自己写的DLL只允许静态链接

楼主x_b_t_1(呆呆)2004-03-25 14:26:38 在 VC/MFC / 进程/线程/DLL 提问

别人使用LoadLibrary加载这个DLL时,让它加载不成功  
   
  谢谢  
  问题点数:100、回复次数:4Top

1 楼xstring(麻雀)回复于 2004-03-25 14:36:12 得分 100

BOOL   WINAPI   DllMain(  
      HINSTANCE   hinstDLL,     //   handle   to   the   DLL   module  
      DWORD   fdwReason,           //   reason   for   calling   function  
      LPVOID   lpvReserved       //   reserved  
  );  
   
   
  通过DllMain函数中的第三个参数lpReserved,可以判断DllMain是如何被加载和卸载的  
   
  当fdwReason为DLL_PROCESS_ATTACH时,若lpReserved为NULL,则说明这个dll是用LoadLibrary动态加载,如果不是NULL则是静态加载的  
   
  当fdwReason为DLL_PROCESS_DETACH时,若lpReserved为NULL,   则说明这个dll正在用FreeLibrary卸载,如果不是NULL,说明程序正在结束  
   
  我说的这些来自MSDN,你也可以自己查查  
  Top

2 楼LeeZi(临渊羡鱼,不如退而结网)回复于 2004-03-25 14:54:05 得分 0

markTop

3 楼x_b_t_1(呆呆)回复于 2004-03-25 15:03:17 得分 0

谢谢~~~~  
  Top

4 楼ymbymb(毛病大哥)回复于 2004-03-25 15:11:16 得分 0

同意xstring  
  extern   "C"   BOOL   WINAPI   DllMain(   HANDLE   hModule,    
  DWORD     ul_reason_for_call,    
  LPVOID   lpReserved  
  )  
  {  
          switch   (ul_reason_for_call)  
  {  
  case   DLL_PROCESS_ATTACH:  
  case   DLL_THREAD_ATTACH:  
  case   DLL_THREAD_DETACH:  
  case   DLL_PROCESS_DETACH:  
  break;  
          }  
  if(ul_reason_for_call   ==   DLL_PROCESS_ATTACH   &&   lpReserved   ==   NULL)   return   FALSE;  
  else         return   TRUE;  
  }  
  Top

责任编辑: efish 参与评论 查找更多:
相关文章
我想做一个从TGraphicobject继承的控件,可是控件的… 我想做一个从TGraphicobject继承的控件,可是控件的字体.........
在XP下的串口通讯时,我的波特率设置成5BAUD,便不能… 在XP下的串口通讯时,我的波特率设置成5BAUD,便不能接收,请问是何原因
请问如何读取WORD文档里的内容,用readfile()怎么不… 请问如何读取WORD文档里的内容,用readfile()怎么不行?
小弟的2个小问题?(Tabsheep,treeview) 小弟的2个小问题?(Tabsheep,treeview)
请教如何查看ACCESS编写程序的原代码? 请教如何查看ACCESS编写程序的原代码?
化学方程式配平 化学方程式配平
转贴,非本人观点:自己动手写OS(操作系统)(二) 转贴,非本人观点:自己动手写OS(操作系统)(二)
用odbc连接excel,怎么知道有多少sheet,和sheet的名… 用odbc连接excel,怎么知道有多少sheet,和sheet的名字?
水园疯狂银行挂牌! yeti_lee (东宝)的 “玩得起爽… 水园疯狂银行挂牌! yeti_lee (东宝)的 “玩得起爽到底水园博彩无限公司” 的赌局大家都想参加吧?但是如果你没多少分,赌起来就不大爽!
我订的2004年全年《开发高手》至今一本都没有到 我订的2004年全年《开发高手》至今一本都没有到
2秒记住本站域名

玩过泡泡龙吗?Readygo?Go! 再加上.Com.Cn的后缀,那就是大名小顶的readygo.com.cn

分类导航
Readygo技术搜索引擎