如题,VC6 是否可以调用 高版本 如VC2008编写的DLL,如果可以,如何调用?高分送上

解决方案 »

  1.   

    标准的dll没有问题
    LoadLibrary()
      

  2.   

    静态编译的DLL应该可以调用的,怎么了?出什么错误信息了吗?
      

  3.   

    现在没有单独机器可以测试,google上搜不到相关问题,所以在理论上先请教一下~
      

  4.   

    静态编译的DLL可以调用;动态编译的DLL需包含相应的MSVC运行库才可以调用,或者windows系统中有MSVC运行库也可以。
    VC2008编写的DLL不能在windows98中使用,只能在windows2000以上的windows版本中使用。
      

  5.   

    Win32和MFC规则DLL都是可以用的,有两点需要注意一下:
    1、2005/2008默认使用Unicode字符集,应改为多字节字符集;
    2、因为VC版本不同,一些类的定义或内部实现也有所不同,尽量不要在不同模块访问同一个类对象。
      

  6.   

    我之前写在用v6调用v8写的dll是经常出现异常,后来我把v8属性页中的c/c++中代码生成/运行时库改为多线程(/MT),
    然后把dll改为release版本来编译,然后在v6中就可以正常用了,静态和动态动可以调用
      

  7.   

    VS2008修改了好多以前不正确的使用方式,这个需要修正一下。要不写成COM吧,这样应该没有问题了。
      

  8.   

    很奇怪,VC2008写的dll里不能用vector<string> 类型的赋值,比如,vector<string> test1;vector<sgring> test2;test2=test1;
    用VC2008调没问题,vc6调就有异常,有人碰到过不?
      

  9.   


    VC2008改进了C++语言方面,更接近C++标准,所以,不是所有的代码都可以在VC6和VC2008
    之间通用。VC6是1998年推出的,那时候的VC不支持很多C++语言特性的。