繁体   English   中英

C ++ / CLI CS0246:找不到类型或名称空间名称“包装器”

[英]C++/CLI CS0246: The type or namespace name 'Wrapper' could not be found

我遇到的问题似乎与相同。

我有一个VS 2008解决方案,其中包括:(为简单起见,更改了名称)

  • DLL A:本机C ++,业务逻辑DLL
  • DLL B:DLL A的C ++ / CLI包装器,名称空间为“包装器”
  • EXE:AC#WinForms GUI EXE项目(引用DLL B)

当我生成EXE时,VS给我一个错误:

error CS0246: The type or namespace name 'Wrapper' could not be found (are you missing a using directive or an assembly reference?)

然而:

第一个链接的问题提到了有关“编译器符号的重复定义”的内容,但是我不确定从这个意义上看要寻找什么。

有什么想法可以尝试吗?

我想我明白了。

更多背景知识:在构建之前,将使用CMake创建整个解决方案。 我使用CMake对EXE的csproj文件进行一些编辑,以使其指向正确的引用,包括DLLB。

每当我运行CMake时,csproj文件的ProjectReference节点中DLL B的静态定义的GUID与输出DLL B的vcproj的新生成的GUID不同步。此GUID不匹配会导致在构建时不引用DLL B ,即使它显示在参考列表中,也没有相关的警告或错误。

我发现此问题的方法是查看构建输出。 在对csc.exe的调用中,DLL B没有“ /引用”条目。

现在,我需要找到一种方法来使这些GUID保持同步!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM