c# - 我可以在一个程序集中同时使用 C# 和 C++/CLI 吗?

标签 c# .net assemblies c++-cli

我能否将 C# 和 C++/CLI 源文件放在一个项目中,然后编译它们以获得单个 .DLL 程序集?

最佳答案

您可以使用命令行工具从 c++/cli 和 c# 中的代码获取单个 DLL。假设您有两个文件:带有 C++/CLI 代码的 A.cc 和带有 C# 代码的 B.cs。它应该看起来像这样:

  • 首先将c++代码编译成.obj文件cl.exe/MD/c/clr A.cc
  • 将 c# 代码编译到“模块”中,添加之前使用/addmodule 开关创建的 .obj:csc.exe/target:module/addmodule:A.obj B.cs
  • 然后将模块链接到单个 DLL:link.exe/DLL/LTCG/NOENTRY/CLRIMAGETYPE:IJW A.obj B.netmodule

我还没有测试过它,但它应该可以工作。

关于c# - 我可以在一个程序集中同时使用 C# 和 C++/CLI 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2860916/

相关文章:

c# - 如何将西里尔文字音译为拉丁文字

.net - .NET dll 和普通 dll 之间的 `exact` 区别是什么?

.net - 确定程序集是否是 .NET 框架的一部分

c# - 选中复选框时如何从 GridView 获取复选框值

c# - 如何从 [Flag] 枚举属性中检索值?

c# - 在Windows应用程序中创建一个文本文件

c# - 在 Google Sheet c# 中创建一个新工作表

c# - 如果我将公共(public)方法添加到 C# 类,是否需要重新编译使用该类型的其他程序集?

c# - Java JPanel 与 WPF XAML 中的 GridLayout 等效

c# - 如何在数据库中表示逻辑模型?