请教:
    我的dll,在自己的机器上编写测试程序通过没有问题,但是在其他的机器上,再代码中如果引用了我的dll,再编译的时候就会出现如下错误,是什么原因?错误信息:fatal error Link1127: library is corrupt我的lib有什么问题吗?

解决方案 »

  1.   

    可能是你的dll用了MFC的DLL,其它机器没装VC所以缺MFC的DLL,用静态链接试一下.
      

  2.   

    主要原因是你的dll中使用了与目标
    主机不同的dll版本。
      

  3.   

    to : broadoceans(broadoceans) 解释的在清楚一点吗?谢谢了!
      

  4.   

    可能目标主机上存在同名的dll(比如系统目录下,当前目录下,VC包含目录下),所以实际上并没有用到你的dll,而那个同名的dll有问题。只是一种猜测,但愿如此,这样,你可以解决问题,我可以拿分,哈哈哈...
      

  5.   

    不对吧?编译的时候出错跟使用了不同版本的DLL有关系吗?
      

  6.   

    从提示上看,应该是broadoceans(broadoceans)说的那样,两个方法:
    1、你的dll使用静态编译
    2、把你机器的mfc42.dll copy 到目标机器上试试看,如果不行,多试几个mfc开头的dll