我正在建立一个托管的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)
问题出在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] 删除。
我来说两句