将非托管C++代码编译为托管代码
Compiling Unmanaged C++ Code as Managed Code
我有很多非托管C++代码是很久以前写的。现在,我想回过头来,使用MS Test(内置在Visual Studio中)将自动测试添加到代码中。然而,为了做到这一点,我必须将C++构建为.lib文件,并围绕它编写一个包装层(以便从C#测试中调用它),或者我需要能够将代码编译为托管代码。我已经找到了第一个选项,但理想情况下我更喜欢使用第二个选项,这样就不需要包装层。注意,尽管我提到用C#编写测试代码,但这并不一定是一个要求。
因此,我更改了项目的属性,使"公共语言运行时支持"属性从"无公共语言支持"更改为"公共语言执行时支持(/clr)"现在当我试图编译时,我得到一个读取的错误
"error D8016: '/ZI' and '/clr' command-line options are incompatible"
有人知道这到底意味着什么吗?我该如何解决上述问题?你以前这样做过吗?我已经在网上搜索和阅读了很长一段时间,但我真的空手而归,没有真正的答案。
任何提示或建议都将不胜感激。谢谢
/ZI
选项用于编辑并继续使用本机代码。
请尝试非常类似的/Zi
选项。调试数据库而不使用"编辑并继续"功能。
相关文章:
- 如何在 Android Studio 4 中编译 C/C++ 原生代码
- Mingw-64 在构建和安装后不会编译 openCV 代码
- 如何在 c++ 非托管代码中反序列化 byte[] 的 json 字符串?
- 通过Python Distutils(用于Python C扩展)使用可重定位的设备代码编译CUDA代码
- 编译的代码不执行文件写入
- 如何使用指针直接从托管代码中的非托管代码中读取矢量数据
- <limits> 使用 VSC2019 编译旧代码时出错
- 异步接口托管 - > 非托管代码
- 使用 msvc 15 在 Qt5.13 中编译 CUDA 代码
- 使用其他编译器编译QT代码
- 编译以下代码时出错
- 为什么在编译此代码时会出现此错误?(在~之后调用terminate)
- 从C++(非托管代码)检索数组到 C 尖锐形式(托管)
- 从本机代码返回到托管代码会损坏返回的对象
- 设置Qt Creator以链接和编译汇编代码
- 我正在尝试编译此代码,请查看
- 将C++非托管代码转换为 C#
- 编译 cpp 代码
- 将非托管C++代码编译为托管代码
- 如何使用两个预编译的头文件.一个用于托管代码,另一个用于非托管代码.xxx.PCH不是一个有效的预编译头文件