10.5 使用较新的 HALCON/.NET 发行

10.5.0.1   .NET Core

.NET Core 项目会在添加软件包时解析特定版本。如果要更新到较新的 HALCON 版本,例如从 22.11.0 升级到 23.05.0,则必须更改项目中指定的版本。

请注意,与 20.11.1 相比,20.11.2 是一个突破性的变化,从 HALCON SemVer 从 20111 到 20112 的主要版本变化中也可以看出这一点。

例如,将项目 .csproj 从 22.11.0 改为 23.05.0:


<PackageReference Include="MVTec.HalconDotNet" Version="2211.0.0" />

至:


<PackageReference Include="MVTec.HalconDotNet" Version="23050.0.0" />

10.5.0.2   .NET Framework

HALCON/.NET DLL 不是一个独立的库,而是本地 HALCON 库的一个接口。因此,项目使用的库版本必须与已安装的 HALCON 版本完全一致。

即使是在应用程序层面向后兼容的维护版本,也不建议混合使用不同版本的二进制文件,因为 HALCON/.NET 和本地 HALCON 库之间的内部通信并不能保证始终兼容。

使用 HALCON/.NET 的应用程序拥有相应程序集的本地副本。因此,在安装较新版本的 HALCON 后,这些应用程序仍将使用其旧的 HALCON 程序集。要使用新的 HALCON/.NET DLL,请重新构建您的项目:Visual Studio -> 解决方案 -> 重新构建解决方案。

如果想在不重新编译应用程序的情况下替换 HALCON/.NET DLL,则需要用新安装的 DLL 手动替换 HALCON/.NET DLL,并更新应用程序的 app.config,以便通知可执行文件新的 HALCON/.NET DLL。具体做法是将 bin\dotnet20\app.configbin\dotnet35\app.config 复制到包含 HALCON/.NET DLL 的目录中,并将其重命名为 <application_name>.exe.config