关于在MFC中调用C#编写的dll的问题!

发布网友 发布时间:2022-04-27 03:13

我来回答

2个回答

热心网友 时间:2022-06-25 07:49

一、使用/clr编译MFC可执行文件或规则C# DLL函数.

1、打开“项目属性”对话框,方法是右键单击“解决方案资源管理器”中的项目并选择“属性”。

2、展开“配置属性”旁边的节点并选择“常规”。在右侧窗格中的“项目默认值”下,将“公共语言运行库支持”设置为“公共语言运行库支持(/clr)”。

3、在相同的窗格中,确保将“MFC的使用”设置为“在共享DLL中使用MFC”。

4、在“配置属性”下,展开“C/C++”旁边的节点并选择“常规”。请确保将“调试信息格式”设置为“程序数据库/Zi”(而不是“/ZI”)。

5、在“配置属性”下,选择“C/C++”,然后选择“代码生成”。请确保将“运行时库”设置为“多线程调试DLL(/MDd)”或“多线程DLL(/MD)”之一。

二、在代码引用需要的dll.

using <mscorlib.dll>.
using "DownloaFiles.dll"
//换成需要的dll文件。
using namespace System;
using namespace ADMessage_test;
//换成dll中类所使用的namespace.
三、在C# DLL函数调用代码前加入#pragma managed

这是manage和unmanage混合编程在MFC下的一种实现方式。

参考资料:http://hi.baidu.com/zzh520420/blog/item/c977a6c67caf5c109d163d81.html

热心网友 时间:2022-06-25 07:49

最好别在2003下使用托管C++,那个东西已经被微软废弃了,如果确实要用,最好在2005下使用C++/CLI混合编程,或者使用.Net内核提供的非托管API,可以搜索下mscoree的相关资料,
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com