我编译其中一个工程时在链接时出现以下的错误:Linking...
ExamBaseWnd.obj : error LNK2001: unresolved external symbol "public: virtual __thiscall CPackExtract::~CPackExtract(void)" (??1CPackExtract@@UAE@XZ)
ExamBaseWnd.obj : error LNK2001: unresolved external symbol "public: class CList<class CSubjectMem,class CSubjectMem &> * __thiscall CPackExtract::GetSubjectList(void)" (?其实我可以把另外一个工程做成静态库,可是我不知道如何把它里面的类导出来。最好不要用DLL来
导出类,我觉得很麻烦。

解决方案 »

  1.   

    作成dll,dll工程中:
     文件myclass.h 
      class AFX_EXT_CLASS Cmyclass
    {
    ...
    }
    在exe工程中:
    setting中设置dll的lib文件路径。
    在要用Cmyclass的文件中包含该头文件(路径)
    然后直接使用该类就可以了注意:在有消息传送的函数(dll中)中,要先调用
    AFX_MANAGE_STATE(AfxGetStaticModuleState()) ;
      

  2.   

    在不用DLL的情况下难道就不可以使用其它工程的类吗?
      

  3.   

    这是什么意思?setting中设置dll的lib文件路径。最好给出源码