DELPHI调用VC++ DLL有关问题。参数中的 类指针 在DELPHI这边怎么办

DELPHI调用VC++ DLL问题。。参数中的 类指针 在DELPHI这边怎么处理?

现有A。DLL   中的一函数原型:

void   MovingObjDraw(   CDC*   pDC,   CMapCvt*   pCvt   );

我现在想   在写一B。DLL   把上面的函数再次封装,提供给DELPHI调用,怎么封装呢?
问题

1。如果在B。DLL中不改变函数MovingObjDraw的参数,那么在DELPHI中怎么给它传递参数呢(CDC   和CMapCvt类   DELPHI中有吗)

2。我可以在B。DLL   作其它的一些可作的处理,目的是方便DELPHI的调用,有什么方法可以避免在DELPHI处理   这些CDC*   pDC,   CMapCvt*   pCvt     传入吗??或者其它别的处理方法也可以




------解决方案--------------------
CDC是MFC的东西,你传给Delphi,能认吗?
为什么 "不改变函数MovingObjDraw的参数 "?
为什么非用CDC?你就不能用HDC吗
------解决方案--------------------
1) 不可以,CDC是MFC的类,CMapCvt不知道是啥应该是你程序里自己定义的类吧,反正都是C++的类,Delphi肯定不认的。
2) void MovingObjDraw( CDC* pDC, CMapCvt* pCvt );这个函数需要改变一下参数,可以考虑这样改void MovingObjDraw( HDC *phDC, void *pCvt);这样Delphi就认了,但是改动比较大,第2个参数需要特殊处理了,可以让Delphi那头传入数据源,b.dll里加工成CMapCvt,然后调用a.dll。

3)小小建议,这种跨语言的调用最好还是搞成二进制统一的方式,Windows下典型的模型就是COM。用ATL把你的DLL写成进程内COM,你会发现这样做以后会很happy的~~~~~
------解决方案--------------------
这些东西不要跨语言传,要传基本数据类型