none
为什么.Net2.0的dll 不能调用 .Net4.0的dll RRS feed

  • 问题

  • 我有很多个C#类库,过去都是用.Net2.0写的。 最近我把其中一个公用的基础类库Base.dll升级到了.net4.0, 结果所有调用它的其它类库都编译不过了,说是版本不如base.dll高。

    这是为什么? 难道我必须把其它所有类库也都升级到.Net4.0 ?? 有这么夸张么?


    信奎爷,无所畏惧!!
    2011年2月27日 8:25

答案

  • 因为没有低版本兼容高版本的说法。
    2011年2月27日 10:41
    版主
  • MFC也是不行的,如果你的DLL接口用了MFC的话,换个版本的MFC或者切换到不同的编译配置(比如Debug切换到Release)就不兼容了。



    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP
    2011年2月27日 14:27
    版主
  • 好吧。那我就只好忍痛将所有类库升级到.Net4.0了。 但愿我的客户们也愿意配合把平台升级到.Net4.0 -_-!!
    信奎爷,无所畏惧!!
    2011年2月28日 2:52

全部回复

  • 因为没有低版本兼容高版本的说法。
    2011年2月27日 10:41
    版主
  • 可是我的对外接口完全没有改变呀。。。如果是MFC的话,不论编译器或运行环境如何,都是可以的啊。。
    信奎爷,无所畏惧!!
    2011年2月27日 14:15
  • MFC也是不行的,如果你的DLL接口用了MFC的话,换个版本的MFC或者切换到不同的编译配置(比如Debug切换到Release)就不兼容了。



    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP
    2011年2月27日 14:27
    版主
  • 好吧。那我就只好忍痛将所有类库升级到.Net4.0了。 但愿我的客户们也愿意配合把平台升级到.Net4.0 -_-!!
    信奎爷,无所畏惧!!
    2011年2月28日 2:52