如何将C++源文件和标头添加到 C# .Net 项目
How can I add C++ Source Files and Headers to a C# .Net project?
我想将HIDAPI库用于自制的USB设备。我不必将 VC++ 项目编译成自己的.dll并在我拥有的 .Net 项目中引用它,我宁愿只将代码存在于 .Net 项目中并能够直接引用它。
原因是我想避免让.dll引用另一个.dll,而只有一个.dll文件。
我反过来做了,当我做一些 JNI 的东西时,我在C++程序中使用了 C# 类。
我在这里想做的事情可能吗?是否有在 .Net 项目中使用C++的白痴指南?
"我在这里想做的事情可能吗?"
不,这样是不可能的。不能在同一项目类型中编译这些源。您需要为 c++/cli 程序集提供一个单独的项目,并引用由 c# 项目导入的此项目。
等等,有一个肯定的答案,但显然它是完全邪恶的:
如何在单个程序集中混合 C# 和C++代码?
如果您的C++代码不是使用/clr:safe 编译的(即使用/clr 或/clr:pure 编译的),请执行以下操作:
1) 将C++代码编译为 .obj 文件
2) 将 C# 代码编译为 .netmodule,使用/AddModule 引用 .obj 文件C++
3) 使用 C++ 链接器将 C# 网络模块直接链接到C++对象文件,以创建混合语言程序集
还有这个:将本机C++链接到 C# 应用程序
是的,不要那样做。
相关文章:
- 将成员变量添加到共享库中的类中,不会破坏二进制兼容性吗
- 如何在C++中从两个单独的for循环中添加两个数组
- POCO::PostgreSQL:如何将std::vector支持添加到`Binder::bind`
- 如何仅为一个函数添加延迟
- 如何防止 c++ 在从浮点型转换为双精度型(不适用于 IO)时添加额外的小数?
- 使用std::transform将一个范围的元素添加到另一个范围中
- 如何将更多文件夹添加到c++include路径
- 如何将元素添加到数组的线程安全函数?
- QT通过C++添加映射QML项目
- 如何将点击的信号和插槽添加到qt中的自定义按钮中
- 如何使用重载的相等(==)运算符向测试用例添加描述
- 为什么Mat类的两个对象可以在不重载运算符+的情况下添加
- 如何防止clang格式在流运算符调用之间添加换行符<<
- 只能向C++添加一定数量的字符
- Qt和C++:将QLineEdit添加到QTabWidget中
- 如何将C++源文件和标头添加到 C# .Net 项目
- 如何在Windows formc++中添加本地c++ dll.. NET项目
- 如何使用Visual Studio在.net c++项目上添加一个DLL作为参考
- 如何在.net Core项目中添加c++库
- 无法在WIN CE平台的.net紧凑框架中添加对DLL的引用