首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >C# .Net6 - C++/CLI包失败

C# .Net6 - C++/CLI包失败
EN

Stack Overflow用户
提问于 2022-06-15 16:54:48
回答 1查看 217关注 0票数 0

我在为我的C++/CLI Visual项目创建Nuget包时遇到了问题。

我有一个.Net6 C#程序集MyNet6Lib,它引用了我的C++/CLI MyClrLib.dll,它也是针对.Net6构建的。这实际上是一些C#类的C++包装器。当我将C++/CLI库打包到Nuget包并安装到C#程序集中时,我会得到一个运行时错误

System.IO.FileNotFoundException:“无法加载文件或程序集”MyClrLib、Version=1.0.1.0、Culture=neutral、PublicKeyToken=null“。系统找不到指定的文件。

当我从C#项目直接引用C++/CLI项目时,C++/CLI库运行良好,但在我的Nuget包中安装时却不能运行。

C#项目可以针对dll构建,但在运行时失败。

MyNet6Lib和MyClrLib的nuspec文件如下所示。

Net6Lib.nuspec

代码语言:javascript
运行
复制
<?xml version="1.0"?>
<package >
  <metadata>
    <id>MyNet6Lib</id>
    <version>1.0.2</version>
    <title>MyNet6Lib</title>
    <authors>Me</authors>
    <description>My NET6 Lib.</description>
    <releaseNotes>First release</releaseNotes>
    <copyright>Copyright 2022</copyright>
  </metadata>
  <files>
        <file src=".\bin\x86\$configuration$\net6.0\MyNet6Lib.dll"  target="lib\netcoreapp6.0\MyNet6Lib.dll"/>
  </files>
</package>

MyClrLib.nuspec

代码语言:javascript
运行
复制
<?xml version="1.0"?>
<package >
  <metadata>
    <id>MyClrLib</id>
    <version>1.0.2</version>
    <title>MyClrLib</title>
    <authors>Me</authors>
    <description>My CLR Lib.</description>
    <releaseNotes>First release</releaseNotes>
    <copyright>Copyright 2022</copyright>
  </metadata>
  <files>
        <file src="..\$configuration$\MyClrLib.dll"  target="lib\netcoreapp6.0\MyClrLib.dll"/>
  </files>
</package>

当构建为.Net4.8时,我没有这个问题,但是最近我已经移植到.Net6了。奇怪的是,直接项目引用工作,而不是从Nuget包中安装,因为相同的dll被复制到构建位置。

有很多关于为.Net程序集创建Nuget包的信息,但我在C++/CLI项目上找不到任何信息。在项目属性中没有“包”选项卡。

如果有人能帮我解决这个问题,或者为我指明调查的方向,我将非常感激。

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-16 11:52:10

通过包含文件Ijwhost.dll解决了这个问题。这是c++/cli库在构建为.Net6时运行的必要条件。

我意识到这不是一个特定的Nuget包问题,而是一个与部署.Net6 C++/CLI项目有关的问题。

然而,其他人可能会遇到同样的问题,因此认为这个帖子是有用的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72635141

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档