最近在做的一个事情是把一个vc6的程序升级到vc2010。但用vs2010升级之后报了很多错误。分析了下程序,猜测其中一个原因是,程序引用了其它的dll,而这个dll是vc6编写的mfc扩展dll,是否会导致不兼容?若是,应该怎么处理?另外,程序还老报 error C2061: 语法错误: 标识符“CHUNKSTATE”是什么原因?
求大神们来指导!

解决方案 »

  1.   

    这个没办法,只能把dll用2010重新编译
      

  2.   

    MFC扩展DLL连debug版和Release版都不兼容,更别说跨版本了
      

  3.   

    VC6很多语法在VS2010都是报错的,比如最简单的作用域。有很多VC6没错的东西到了2010就会变成警告了。
    先修改dll里边的错误吧,编译好再修改调用程序模块。
      

  4.   

    谢谢楼上各位的回答。明白一些了。我也验证过了。基本就是程序涉及的许多vc6编写的mfc扩展dll的问题。可现在问题是,那些dll是第三方的库,我这还不能拿到其源代码,也就无法重新编译成vc2010版本了。那这样的话升级还有可能性么?另外就是,error C2061: 语法错误: 标识符“CHUNKSTATE”这个错误究竟是什么情形?报了好多错误都是这一条。。
      

  5.   

    对。。我也在想为什么一定要升级。。可是这是师兄要求的。。他当时只是觉得说vc6做出来的界面太搓了。。我想的话界面不好看在vc6上换个bcg的控件不就行了么。。也或许是升级到vc2010上利用新平台的特性吧,提高代码质量。。
      

  6.   

    算啦。。就这样吧。。可能会重新想办法了。。没源代码的那些dll有的还涉及了dx9,基本上在vc2010上用是不可能了。。结贴啦。谢谢楼上各位大神~