LoadLibrary(".\\XXX.dll");
我在2000下开发,运行都没问题。换了XP,试了两台电脑,一台有VC环境,一台没有,都显示加载失败。
GetLastError 是 126XXX.dll好像是unicode编码,不过我在2000下的调用程序不是,但是依然正常调用,为什么在XP下就失败呢?

解决方案 »

  1.   

    1. XXX.dll需要其它库的支持,但目标机器中没有
    2. LoadLibrary(".\\XXX.dll"); 的路径不对
      

  2.   

    在VC的output窗口中可以看到是加载哪个DLL失败的。
      

  3.   

    error 126:找不到指定的模块。
    应该是路径不正确吧
      

  4.   

    不是路径问题,我特意把库放到C盘根目录下执行LoadLibrary("c:\\XXX.dll");问题依旧
      

  5.   

    LoadLibraryA("c:\\XXX.dll");呢还有dll的依赖是否满足了?
      

  6.   


    如此看来不是找不到你的“XXX.dll”,而是你这个DLL还依赖了其它DLL!2000系统目录下有所以就没出现。
      

  7.   

    用VC6的工具DEPENDS查看xxx.dll,看看它是否还依赖其它库