至于他们给你的DLL,基本上能断定那个是CLR写的DLL。就我理解,CLR应该和MFC是完全不一样的,无论是语言的语法,或者是从CLR、MFC的基础架构方面,都没有交集!因此可以将CLR理解为一门全新的语言,它使用的库是.net 库。楼主肯定有 MFC 基础的。如果楼主研究过C#的话,那CLR应该是很容易上手的。从亲缘性方面来讲,CLR项目和C#项目更相似。它们的DLL只需要在使用DLL的项目中,通过楼主所言的“引用”方式添加进来就OK了。没有LIB的区别。它的实现机制是:所有DLL/EXE在文件内部都会有一个清单,该清单记录了DLL/EXE自己实现的类,函数以及它引用别人的类、函数和这些文件名等一系列信息。
至于有人提出是COM的关系,我认为这个问题应该和COM没有一点关系。所以如果要从COM入手,完全是一条死胡同。会浪费时间的!
虽然VC支持MFC和CLR混编,但如果要混编,我感觉系统不稳定,一方面我担心兼容性的问题导致程序的稳定性问题。另一方面,既要熟悉MFC,又要熟悉CLR,否则混编很困难。我认为,既然要用别人的CLR DLL,那么最好还是别用MFC,直接做CLR。楼主不熟悉CLR,那么只有学。尽管需要赶工期,但我也想不出好办法。做CLR项目是我认为最好的出路!
提供4个方法吧:可以:
1、#include "***.h" // 将***.h文件拷贝到当前目录
2、#include "E:\\Include\\***.h" // 绝对路径
3、#include "..\\Include\\***.h" // 相对路径
4、#include "***.h"
于project->settings->C/C++ Tab: Additional include directories 加入***.h所在的
目录
和工程没有太大的关系 直接引用文件就可以了
你的具体的类不就是定义在那些头文件里面吗?
如果头文件引用成功的话 里面的类当然就可以用了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)