在托管 C++ 类库中使用 System::Drawing 命名空间

Posted

技术标签:

【中文标题】在托管 C++ 类库中使用 System::Drawing 命名空间【英文标题】:using System::Drawing namespace in managed C++ class library 【发布时间】:2010-07-16 10:32:50 【问题描述】:

我正在将一些函数从托管 C++ Winforms 应用程序移动到类库,以便我可以在我正在编写的新 C# 应用程序中调用它们。然而,其中一个函数返回一个 System::Drawing::Bitmap^ 并使用 System::Drawing::Color 类,这会导致错误,指出 System 不包含名为 Drawing 的命名空间 ...

显然是这样,但我猜测,由于类库本身并不像 winform 那样具有图形元素,是否可能需要额外的步骤来访问该功能?

我需要添加/链接到什么?

提前谢谢你。

托尼。

【问题讨论】:

【参考方案1】:

您可能需要添加对System.Drawing.dll 的引用。右键单击您的项目并选择“添加引用”,它应该在某处。

【讨论】:

检查库文件夹是否在编译器搜索的路径中。选项->项目&sols->VC++目录。

以上是关于在托管 C++ 类库中使用 System::Drawing 命名空间的主要内容,如果未能解决你的问题,请参考以下文章

将非托管 c++ 类库暴露给 c#

C++调用C#dll类库中的方法(非显性COM)

C++访问托管类(C#类库)

WebApi控制器使用类库

C#调用C++类库的几种方式

将 C# 类库导入 Visual C++