vc++,mfc扩展DLL是没办法被mfc以外的程序调用的。
规则dll可以使用winapi
LoadLibrary(...)
GetProcAddress(...)进行

解决方案 »

  1.   

    你同时提供这些mfc类需要的动态库,至于delphi调用你只要把接口
    暴露给他就可以了
      

  2.   

    谢谢,学习了,那么在vc中也可以调用
    LoadLibrary()和GetProcAdress()吗?
      

  3.   

    那是不是说用MFC AppWizard(dll)这种方式创建的DLL都可以被Delphi调用?
      

  4.   

    如果要使Delphi调用DLL中的MFC类函数,有以下几个步骤:1.创建MFC AppWizard(DLL)应用程序,选择MFC标准DLL,静态连接库2.创建要完成一定功能的类X以及相关函数,如void X::MyName()3.在App头文件中加入类X的头文件,并定义类X的实例t4.在App头文件的最下面有一行全局变量的定义,如CXXXApp theApp,在其下面实现要引用类X的函数,
    即相当于函数的中转站,如:
    void _stdcall monkey  { return MyName() ; }5.在.DEF文件的末尾加入要导出的函数,如monkey(一定要和上面定义的到出函数名相同);每个函数占一行,函数后面没有任何参数和符号6.在Delphi中怎么调用MFC DLL就不要我讲了,反正就那两个函数,注意Delphi和VC变量的对应转换关系
      

  5.   

    第4步改成 void _stdcall monkey  { return theApp.t.MyName() ; }
      

  6.   

    第4步改成:  void _stdcall monkey  { return theApp.t.MyName() ; }