.Net Core 中的 C++/CLI 支持

2023-12-23

我们的项目结构是这样的,

native.dll:- 这包含用 c\c++ 编写的纯本机代码。 这个native.dll使用*def文件公开一些函数。

Wrapper Library(wrapper.dll compiled with .Net framework v4.0):- 为了使用的功能native.dll, a Wrapper lib(wrapper.dll)写在C++\CLI using :clr\oldsyntax。这个包装有所有 的代码Interoperability and Marshalling.

Application(Console App v4.0)直接使用wrapper.dll使用提供的功能 经过native.dll.

现在这个项目需要运行在.Net核心。这意味着我们将有一个.Net Core application那将会reference wrapper.dll反过来将参考native.dll.

我知道这不会直接起作用。但问题是.Net Core(CoreCLR)是否支持 C++\CLI (clr\oldsyntax) 运行时环境 ?

如果不是,该应用程序的可能解决方案是什么?


.Net Core(CoreCLR)是否支持C++\CLI (clr\oldsyntax)运行环境?

据我所知有没有计划通过 .NET Core 支持 C++/CLI https://github.com/dotnet/coreclr/issues/659.

如果不是,该应用程序的可能解决方案是什么?

您可以(应该)提供 C API。单声道 e. G。支持P/Invoke http://www.mono-project.com/docs/advanced/pinvoke/ and .NET Core 还支持 P/Invoke https://jeremylindsayni.wordpress.com/2017/05/01/using-pinvoke-with-net-core-2-and-windows-10-iot-core-on-the-raspberry-pi-3/(也可以看看这个堆栈溢出问题 https://stackoverflow.com/questions/38202027/p-invoke-in-net-core-with-linux and 此 DllMap 相关票证 https://github.com/dotnet/coreclr/issues/930).


更新(2022-09-02):这个答案来自2016。请参阅其他答案(例如,this https://stackoverflow.com/a/73332218/3054219)了解最新 .Net Core 版本的可能性。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

.Net Core 中的 C++/CLI 支持 的相关文章

随机推荐

  • 在 RealityKit 中锚定多个场景

    将多个场景 来自 Reality Composer 加载到 arView 时 场景不会锚定在同一空间中 在此示例中 scene1 在应用程序启动时加载 按下按钮后 scene2就被添加到场景中 在这两个场景中 模型都放置在原点 并预计与添加
  • 无法在 WPF 中设置动画后的属性

    我使用以下代码为我的窗口设置动画 winLogin login new winLogin login Owner this login Show DoubleAnimation da new DoubleAnimation da From
  • 说服 Webpack 解释其“无法解析 'foo'” 错误

    我怎样才能说服Webpack 当它要发出时Can t resolve foo also 发出有关的信息它尝试过的地方 to find那个图书馆 错误信息Can t resolve foo 没有帮助 因为这是一条死胡同 读者不知道 Webpa
  • 仅使用 css/bootstrap 粘性多个表头 (thead) 行

    我试图在下面有多行 thead 标签被粘贴 而表格的其余部分是可滚动的 This https stackoverflow com questions 12266262 position sticky on thead 59690013 59
  • 按下主页按钮后如何在后台设置 CABasicAnimation 动画?

    我是ios开发的新手 我在我的项目中使用轮子图像 动画在前景模式下工作正常 之后我按下主页按钮 现在我重新启动应用程序 滚轮动画不起作用 这是我的代码 CABasicAnimation animation CABasicAnimation
  • 模块中子应用程序之间的 Angular2 路由

    我正在将 Angular 2 1 用于一个大型应用程序 该应用程序具有多个子模块 每个子模块定义按功能组织的子应用程序 顶层模块通过导入每个子应用程序的路由等 为 RouterModule 配置整个应用程序的所有子路由 因此 从子应用程序的
  • 如何在 LINQ to Entities 查询中实现查询拦截? (C#)

    我正在尝试在 EF4 中实现加密列 并使用 CTP5 功能来允许简单地使用 POCO 来查询数据库 抱歉 这是很多话 但我希望下面的内容足以解释需求和问题 那么 一些背景知识以及我迄今为止的进展 目的是 如果您在不使用我们的 DAL 的情况
  • Scala 解析器组合器:在流中解析

    我在 scala 中使用本机解析器组合器库 我想用它来解析许多大文件 我已经设置了组合器 但是我尝试解析的文件太大 无法一次读入内存 我希望能够通过解析器从输入文件流式传输并将其读回磁盘 这样我就不需要一次将其全部存储在内存中 我当前的系统
  • 创建一个新的 SVGTransform 对象以附加到 SVGTransformList

    我正在使用 Firefox 3 6 想在单击时向 svg 元素添加翻译 该元素已经有其他翻译 var svgs document getElementsByTagName svg svg var group svgs 0 childNode
  • 未从 lambda 函数调用 aws ses.sendEmail

    我用 node js 编写的 lambda 函数非常简单 当 dynamo 数据库中出现新条目时 将调用 Lambda 然后我想循环遍历每个条目并发送电子邮件 由于某种原因 我无法理解为什么 ses SendEmail 函数从未被调用 我将
  • 如何将 PHP 中的数据插入到 MariaDB 中?

    我熟悉 MySql 数据库 但有一个名为 MariaDB 的新数据库 我尝试从 PHP 代码插入数据但不能 那么你能帮我插入数据吗 我的服务器上的 PHP 版本是 5 4 32 MySQL 版本是 10 0 20 MariaDB cll l
  • JavaScript 拆分如何处理阿拉伯语和英语数字字符串?

    当我尝试拆分时 8635 split 然后 JavaScript 给我这个结果 0 1 8635 console log 8635 split 当我尝试拆分时 2132 split 它给了我这个不同的结果 0 2132 1 console
  • 从三个不同的表创建一个表

    我在 SQL 中有三个表 我需要将它们全部合并为一个 我需要一张表中所有表的所有字段 所有表都包含来自三个不同年份的相同字段 我写了一段代码 CREATE TABLE COL TBL TRAINING ALL YEARS AS SELECT
  • 给定角度和线上的点绘制一条线

    在我的图像中 我有一个三角形 代表箭头 该箭头定义了在同一图像中进一步搜索所考虑的方向和区域 例如 如果我有一个相对 x 轴旋转 30 度的三角形 并且它的尖端位于图像中的 250 150 处 我想找到并画一条垂直于三角形尖端的线 如下图所
  • python lxml 树,line[] 创建多行,需要单行输出

    我正在使用 lxml 使用 python 创建一个 xml 文件 我正在逐行解析文件 查找字符串 如果该字符串存在 我将创建一个子元素 我正在为 SubElement 分配一个值 该值存在于解析文件中我正在搜索的字符串之后 问题 如何将所有
  • 将 Jquery Ajax 与 PHP 结合使用

    我有用 javascript ajax 编写的代码 我喜欢将相同的代码传输到 jquery 中 这是我的 javascript Ajax 代码 function cascadeCountry value if document getEle
  • 在适用于 Linux 的 Windows 子系统上运行 JavaFX 15 应用程序时出现内部错误

    当我尝试在适用于 Linux WSL2 Ubuntu 20 04 的 Windows 子系统上运行 JavaFX 15 应用程序时 我遇到了困难 需要有关后续尝试步骤的建议 到目前为止 我已经能够在 WSL 内运行我通常在 Windows
  • 卸载并重新安装节点

    我正在我的 MacBook 上卸载并重新安装 Node 和 npm 到目前为止我已经做了 sudo rm rf usr local lib node modules npm 酿造卸载节点 酿造取消链接节点 sudo rm rf 任何和所有节
  • OSGi 和 Akka 如何互相受益?这是如何构造的?

    跟进我的相当不合逻辑的问题 https stackoverflow com questions 20122538 component based application with scalability in mind osgi or ak
  • .Net Core 中的 C++/CLI 支持

    我们的项目结构是这样的 native dll 这包含用 c c 编写的纯本机代码 这个native dll使用 def文件公开一些函数 Wrapper Library wrapper dll compiled with Net framew