设置首页收藏本站
开启左侧

Halcon18 内的 Try 捕捉不到异常,这是为什么

[复制链接]
qq327835450 发表于 2019-6-12 15:34:13 | 显示全部楼层 |阅读模式
Halcon11 升级到 Halcon18 后   将 Halcon18 版本的代码 转换成 C++ 代码后   在C++ 内运行 出现算子参数异常时   Try   无法捕获到异常  会直接抛出使软件奔溃
  1. try
  2.   {

  3.   }
  4.   // catch (Exception)
  5.   catch (HalconCpp::HException &HDevExpDefaultException)
  6.   {
  7.     HDevExpDefaultException.ToHTuple(&hv_Exception);
  8.   }
复制代码

Halcon18转换的C+代码

Halcon18转换的C+代码

Halcon18转换的C+代码

Halcon18转换的C+代码
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
绝地武士 发表于 2019-6-12 16:41:40 | 显示全部楼层
是抓取的HalconException么?一般情况下可以触发错误,可能是楼主没有注册异常处理函数!
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
 楼主| qq327835450 发表于 2019-6-12 16:45:04 | 显示全部楼层
绝地武士 发表于 2019-6-12 16:41
是抓取的HalconException么?一般情况下可以触发错误,可能是楼主没有注册异常处理函数! ...

代码   抓取的  HException 内部的异常

catch (HException &HDevExpDefaultException)  {
    HDevExpDefaultException.ToHTuple(&hv_Exception);
    (*hv_IsMaskOverlap) = 1;
    GenEmptyObj(&ho_Image_Adjust_dark);
    return;
  }

奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
绝地武士 发表于 2019-6-12 16:54:38 | 显示全部楼层
qq327835450 发表于 2019-6-12 16:45
代码   抓取的  HException 内部的异常

catch (HException &HDevExpDefaultException)  {

楼主如果抓取不到可以尝试对你的每个函数返回值判断是否等于H_MSG_TRUE(2)或者判断每个图形的面积大小初始化状态来判断是否有值或者异常,然后就直接返回错误代码即可!
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
 楼主| qq327835450 发表于 2019-6-12 17:00:53 | 显示全部楼层
绝地武士 发表于 2019-6-12 16:54
楼主如果抓取不到可以尝试对你的每个函数返回值判断是否等于H_MSG_TRUE(2)或者判断每个图形的面积大小初始 ...

{:1_358:}  我其实是想找到 Try 无法捕捉到异常的原因。。。   换种方式。。。就增加耗时了
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
绝地武士 发表于 2019-6-12 17:31:13 | 显示全部楼层
qq327835450 发表于 2019-6-12 17:00
我其实是想找到 Try 无法捕捉到异常的原因。。。   换种方式。。。就增加耗时了 ...

嗯,一般C#里面捕获异常容易出现捕获不到的情况,但是C++一般都是可以的,楼主再查下吧,找到原因记得分享下!
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
 楼主| qq327835450 发表于 2019-6-14 15:37:39 | 显示全部楼层
绝地武士 发表于 2019-6-12 17:31
嗯,一般C#里面捕获异常容易出现捕获不到的情况,但是C++一般都是可以的,楼主再查下吧,找到原因记得分 ...

  好滴
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
Oscar_Chen 发表于 2019-6-19 09:13:52 | 显示全部楼层
是不是编译器版本的问题
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
 楼主| qq327835450 发表于 2019-6-20 11:25:26 | 显示全部楼层

不会吧   相同的版本的编译器   Halcon11 可以捕捉到    Halcon18 就不行
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
Jescal0001 发表于 6 天前 | 显示全部楼层
我用24.11 也遇到一样的状况 后来楼主有解决办法吗
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表