Visual Studio 2008 中的 C# 项目中的 C++ 项目参考
Posted
技术标签:
【中文标题】Visual Studio 2008 中的 C# 项目中的 C++ 项目参考【英文标题】:C++ project reference in a C# project in visual studio 2008 【发布时间】:2010-07-02 23:42:11 【问题描述】:是否可以在 C# 项目中引用 C++ 项目?我尝试在 c# 项目中添加对该 C++ 项目的引用,但出现错误提示“无法添加对的引用”
【问题讨论】:
【参考方案1】:您不能直接引用本机 DLL。只有在为 CLI 编译它(以 .NET CLR 为目标)或构建了 COM 组件(在这种情况下 VS 会自动构建互操作 DLL)时,您才能这样做。否则没办法,你只好写一个包装DLL。
【讨论】:
【参考方案2】:如果您的 C++ 项目是本机(标准 C++)项目,则不是。如果是托管项目,可以添加对它的引用。
对于本机代码,您需要使用 P/Invoke 来访问 C++ DLL 中的函数。
【讨论】:
【参考方案3】:看看this 网页。这是一篇关于混合 C、C++、C# 和 Lisp 代码以及简短示例的非常好的文章。不幸的是,当您使用托管 C++ 时,C++ -> C# 大多是可能的。 简短示例 (from earlier mentioned webpage),展示了如何从 C# 调用 C++ 托管的 Adder 类:
using System;
using System.Collections.Generic;
using System.Text;
namespace Dllcaller
class Program
static void Main(string[] args)
Adder a = new Adder();
Console.WriteLine(a.add(1, 7));
while (true) ;
【讨论】:
以上是关于Visual Studio 2008 中的 C# 项目中的 C++ 项目参考的主要内容,如果未能解决你的问题,请参考以下文章
使用 c# 将 Visual Studio .net 2003 转换为 2008
在哪里可以找到要在 Visual Studio 2008 中使用的 C# 应用程序的分析器? [关闭]
在visual studio2008上用c#写的程序应该用啥软件来画类图
从 Visual Studio 2008 升级到 Visual Studio 2010 速成版