在C#和VC++中使用DLL调用方法及其接口地址与数据类型的映射关系
发布时间
阅读量:
阅读量
采用VC++结合MFC动态链接库(dll)进行绘图组件的开发,那么在C#与VC++环境中应如何调用该dll?
一、VC DLL接口定义
以开发浮云绘图组件FYDC.dll为例,该组件属于VC MFC动态链接库,由多个类库构成,其中包括MFC类以及窗体、图标等多种资源。具体的编码定义与实现过程如下:
-
建立名为FYDC的MFC常规动态链接库dll工程项目;
-
开发用于绘制线条的CSLine类、用于绘制圆形的CSEllipse类等,并实现包括画布CCanvasWnd在内的所有绘图功能;
-
在FYDC.h和FYDC.cpp文件中引入绘图类库的相关头文件,例如CanvasWnd.h、SLine.h等;
-
在FYDC.cpp中定义导出接口(部分接口示例如下),并完成其具体实现。
1> extern "C" __declspec(dllexport) CCanvas* New()
2> extern "C" __declspec(dllexport) void Create(CCanvas* canvas, HWND hParentWnd, int x, int y, int w, int h)
3> extern "C" __declspec(dllexport) void Load(CCanvas* canvas,
全部评论 (0)
还没有任何评论哟~
