没有本质区别:
  一个是隐式调用,使用.h和.lib,好用,但需要lib
  一个是显示调用,用LoadLibrary,直接找到函数地址,灵活,但使用较麻烦

解决方案 »

  1.   

    使用.h和.lib,如果程序运行时缺少lib,那么程序就不能启动
    使用LoadLibrary只有用到时检查dll的存在
      

  2.   

    我觉得通过头文件和lib文件来调用dll时客户程序启动时就同时加载dll,而用loadlibrary是可以在客户程序运行的任何时候加载dll,而且只要dll中函数申明不便,函数实现改变也不用重编译客户程序,对吗?
      

  3.   

    to masterz():
      "如果程序运行时缺少lib,那么程序就不能启动"
    不对吧!
      

  4.   

    "如果程序运行时缺少lib,那么程序就不能启动"
    我觉得不对,DLL生成Lib只起一个导入表的作用,实际程序运行时只找DLL,不用Lib。to thankyou(help):
    无论用Lib还是用LoadLibaray+GetProcAddress,只要DLL中函数名不变,都可以正常使用。
    否则Win98程序就无法运行在Win2K上了~~~~~