需要为C ++ / CLI创建什么类型的项目?

时间:2012-05-17 19:35:44

标签: c# visual-studio-2008 visual-c++ c++-cli

我正在为C ++ / CLI中的本机C ++方法编写一个包装器,它将它们暴露给C#。现在我正在使用Visual Studio 2008.任何人都可以告诉我需要创建什么类型的项目,以便我的包装器将暴露给C#。我在Visual Studio 2008中看到Visual C ++下有不同类型的项目---> CLR ---->

class library,
CLR Empty Project,
Windows form control library,
CLR Console Application,
Windows Forms Application,
Windows Service

我应该使用哪一个?

1 个答案:

答案 0 :(得分:7)

您必须创建类库类型的项目。最重要的是在Project Properties中指定“Common Language Runtime Support”选项(设置为“Common Language Runtime Support(/ clr)”)。配置属性 - >一般

这将允许您使用

#pragma managed
... use your native stuff here
#pragma unmanaged

pragma并链接到本机.lib文件。

有关细微的详细信息,请参阅此链接

http://www.codeguru.com/cpp/cpp/cpp_managed/interop/article.php/c6867/Consuming-Unmanaged-C-Class-Libraries-from-NET-Clients.htm

64位版本中有一个catch(本文未提及)。 “链接器 - >输入 - >强制符号引用”必须设置为64位的“_ DllMainCRTStartup”和32位的“ _DllMainCRTStartup @ 12”。