如何修复引用特定NuGet软件包提供的dll版本的托管C ++程序集(VS2017)

山姆·麦克里尔(Sam Mackrill)

我正在建立一个托管的c ++ dll(udnet.dll),它引用了一个Nuget软件包提供的dll。

packages.config

<packages>
  <package id="ForeignLanguage" version="2.0.5" allowedVersions="[2,3)" />
</packages>

在完整版本中使用时,ForeignLanguage.dll的实际版本为2.0.6,因为自udnet.dll生成以来,该版本已修正了一个小错误。

但是,加载udnet.dll时失败,因为它正在寻找2.0.5

在此处输入图片说明

我该如何构建udnet.dll,以便它对ForeignLanguage的版本不那么挑剔?我只希望主要版本不匹配时失败。即(2.0.0.0)

山姆·麦克里尔(Sam Mackrill)

问题出在ForeignLanguage.dll,我没有在AssemblyInfo.cpp中将AssemblyVersion设置为2.0.0.0

#define VER_FILE_VERSION_STR STRINGIZE(GITVERSION_Major) \
"." STRINGIZE(GITVERSION_Minor) \
"." STRINGIZE(GITVERSION_Patch) \
".0"

#define VER_VERSION_STR STRINGIZE(GITVERSION_Major) \
".0.0.0"

[assembly:AssemblyVersion(VER_VERSION_STR)];
[assembly:AssemblyFileVersion(VER_FILE_VERSION_STR)];

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在VS2017中将依赖程序集包括到NuGet包中

VS2017无法加载文件或程序集Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll或其依赖项之一

管理Nuget软件包使VS2017崩溃

如何修复VS2017?

VS2017的文件版本

VS 2017中的生成包不打包引用的程序集

VS2017安装程序-程序包清单签名验证失败

如何在VS2017(或VS2019)中使用新的CSPROJ格式创建.NET程序

释放引用其他程序集的nuget软件包

VS2017:无法使用MSBuild还原NuGet软件包

缺少VS2017的``管理NuGet软件包''对话框

使用VS2017制作框架(不是核心,不是标准)NuGet软件包

如何在VS2017中为实体框架添加Oracle提供程序?

适用于带有实体框架的Oracle非托管提供程序的Nuget软件包

托管的VS2017代理程序生成master.dacpac不存在

VS2017中未显示“配置应用程序见解”,以及如何在VS2017中本地查看见解?

VS2017如何创建一个空的Web“应用程序”

C程序出错,第一次使用VS2017

代码在VS(2017)中构建良好,但msbuild或TFS的“程序集清单与程序集引用不匹配”

CMake:如何在安装了VS2017的情况下指定VS2015.3工具集

我如何解决Nuget DLL地狱-无论我做什么VS坚持认为dll版本与软件包中的版本不同

VS2017 中的 Nuget 推送

在VS2017中重置NuGet凭据

VS2017 C ++标准库模块

如何在vs2017软件(以及asp.net核心项目)中从nuget查找和使用下载的软件包?

慢nuget vs2017安装包android

我如何在NuGet v3 API中具有本地软件包的程序集(dll)?

Nuget软件包-引用的程序集不包含在项目引用中

如何将Nuget软件包dll添加到Wix安装程序