添加通用Windows C#类库引用到通用Windows C ++ DLL项目Visual Studio 2015

时间:2016-12-30 03:02:04

标签: c# c++ dll visual-studio-2015 uwp

正如标题所描述的,我正在尝试将UWP C#类库引用添加到UWP C ++ DLL项目中。这两个项目都针对Windows 10 v10.0.14393.0。添加引用后,所有内容都显示为有效,引用显示在引用列表下,未列出任何错误。当您尝试使用引用和编译时,会出现以下错误:

  

C2871具有此名称的命名空间不存在。

我在这里遗漏了什么吗?创建新的通用Windows C ++项目时,唯一的选项是DLL,Static Lib和Windows运行时组件。 C ++没有类库选项。我尝试了所有三个不同的项目,结果相同。有人可以提供解决方案和/或解释为什么我无法从UWP C ++项目引用UWP C#类库吗?这似乎应该是可能的。我知道在UWP之前,过去是可能的。

代码很简单。

C#代码:

namespace ClassLibrary1
{
    public class Class1
    {
    }
}

C ++代码:

using namespace ClassLibrary1;

1 个答案:

答案 0 :(得分:3)

您的C#项目必须是“C#Windows运行时组件”项目,而不是“C#类库”。您无法从C ++访问类库。如果目标代码使用不同的语言,最实用的方法是通过将其编译为Windows运行时组件来访问它。

此外,在制作C#Windows运行时组件项目之后,不要忘记将其添加到C ++项目引用中(如果您没有使用vcxproj来构建代码,则为/ FU编译器标志)。