1.对所以的局部零时变量HObject类的使用前后都加Dispose();
2.对全局的HObject类变量进行如下定义
HObject liveImage = null;
HObject ExpGet_liveImage()
{
return liveImage;
}
void ExpSet_liveImage(HObject obj)
{
if (liveImage != null)
liveImage.Dispose();
liveImage = obj.CopyObj(1, -1);
}
liveImage = obj.CopyObj(1, -1);//此处不能直接赋值,否则,当obj.Dispose();时全局变量也将注销
另在网上看见也有可能导致的原因:
1.vs的版本、halcon的版本不对
2.对于有的函数需要调用后需调用对应的clear函数进行注销。