Chapter “Creating Applications With HALCON/.NET” describes in detail how to develop HALCON/.NET applications in general. If you want to create applications under Linux using Mono, see the following sections for additional information: "使用 HALCON/.NET 创建应用程序" 一章 详细介绍了开发 HALCON/.NET 应用程序的一般方法。如果您想在 Linux 下使用 Mono 创建应用程序,参见以下小节了解更多信息:
如果您想以 Linux 为目标且不需要 Windows 窗体,请考虑使用 .NET Core。
在通过 Mono 开发或使用 HALCON/.NET 应用程序时,请注意以下限制:
private void hWindowControl1_HInitWindow(object sender, System.EventArgs e)
{
window = hWindowControl1.HalconWindow;
window.SetDraw("margin");
window.SetColor("cyan");
}
由于 HALCON/.NET 的平台独立性,只要目标计算机上安装了 Mono 和 HALCON,您就可以将在 Windows 下创建的应用程序复制到 Linux 计算机上,并在那里启动它(更多信息请参阅 "部署应用程序" 一节 )。
大多数 HALCON/.NET 示例都在子目录 makefiles 中提供了一套 makefiles,让您可以在 Linux 下编译这些示例(有关支持 Linux 的示例列表,参见 "提供的示例" 一节 )。要开始编译,只需键入
gmake
可执行文件放在子目录 makefiles/bin 中。
HALCON XL 应用:
!
请注意,只有在需要 HALCON XL 功能时才可使用。
要创建 HALCON/.NET XL 应用程序,请键入
gmake XL=1
<configuration> <dllmap dll="halcon" target="/opt/halcon/lib/x64-linux/libhalcon.so"/> </configuration>
图 12.1: HALCON 安装在 /opt/halcon 目录下的配置文件示例。
在某些情况下,Mono 可能找不到本地 HALCON 库 libhalcon.so,这应通过环境变量 LD_LIBRARY_PATH 来解决,并发出相应的错误信息。您可以为 HALCON/.NET(和 HDevEngine/.NET)程序集创建配置文件,明确指定 HALCON 库的路径(示例见 图 12.1 ),方法是调用
gmake config
如果只想为其中一个程序集创建配置文件,请使用 make 命令 config_halcon 和 config_engine。
请注意,您也可以在项目文件中使用 xbuild(Mono 的 msbuild 实现)。
原则上,您也可以使用其他图形用户界面库代替 Windows 窗体或 WPF,例如 Gtk#。但是,HSmartWindowControl 或 HSmartWindowControlWPF 分别是 Windows 窗体或 WPF 元素,因此不能再使用。相反,您可以使用算子 OpenWindow 直接打开 HALCON 图形窗口。如果要在另一个元素内放置图形窗口,请在参数 fatherWindow 中传递该元素的本地窗口句柄。请注意,HALCON/.NET 尚未与其他图形用户界面库一起进行测试。