海康二次开发学习笔记7-流程相关操作

news2024/9/22 13:27:04

流程相关操作

流程的相关操作包括选择路径,导入流程,导出流程,运行流程等.

在开始前,扩展优化一下写法,供其他地方重复调用.

        /// <summary>
        /// 消息显示区显示消息
        /// </summary>
        /// <param name="msg"></param>
        public void AddMsg(string msg) {
            listBox1.Items.Add(msg);
            listBox1.TopIndex = listBox1.Items.Count - 1;
        }

        /// <summary>
        /// TryCatch捕获SDK异常,系统异常
        /// </summary>
        /// <param name="excute"></param>
        /// <param name="msg"></param>
        public void RunTryCatch(Action excute,string msg) {
            try
            {
                excute();
                AddMsg(msg);
            }
            catch (VmException ex)
            {
                MessageBox.Show(Convert.ToString(ex.errorCode, 16));
            }
            catch (Exception ex) {
                MessageBox.Show(ex.Message);
            }
        }

选择路径

         /// <summary>
        /// 选择流程路径
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button7_Click(object sender, EventArgs e)
        {
            OpenFileDialog openFileDialog = new OpenFileDialog();
            openFileDialog.Filter = "VM Prc Files|*.prc*";
            if (openFileDialog.ShowDialog() == DialogResult.OK)
            {
                RunTryCatch(() =>
                {
                    textBox2.Text = openFileDialog.FileName;
                }, "流程选择路径成功.");
            }
        }

导入流程

        /// <summary>
        /// 导入流程
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button11_Click(object sender, EventArgs e)
        {
            RunTryCatch(() => {VmProcedure.Load(textBox2.Text, "");},
                "流程导入成功.");
        }

导出流程

        /// <summary>
        /// 导出流程
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button10_Click(object sender, EventArgs e)
        {
            RunTryCatch(() => {VmProcedure vmProcedure = (VmProcedure)VmSolution.Instance[comboBox1.Text];vmProcedure.SaveAs("E:\\测试保存流程.prc");}, 
                "流程保存成功.");
        }

运行流程

        /// <summary>
        /// 运行流程
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button8_Click(object sender, EventArgs e)
        {
            RunTryCatch(() => {VmProcedure vmProcedure = (VmProcedure)VmSolution.Instance[comboBox1.Text];vmProcedure.Run();/*vmProcedure.ContinuousRunEnable = true;流程连续运行*/},
                $"运行一次流程{comboBox1.Text}成功.");
        }

删除流程

        /// <summary>
        /// 流程删除
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button9_Click(object sender, EventArgs e)
        {
            RunTryCatch(() => { VmSolution.Instance.DeleteOneProcedure(comboBox1.Text); }, "流程删除成功.");
        }

界面效果

  1. 运行程序,加载方案

在这里插入图片描述

  1. 选择流程路径,导入流程

在这里插入图片描述

可以看到,在方案内新增加了刚导入的标定1流程.

  1. 选择流程,删除

在这里插入图片描述

在这里插入图片描述

对应流程删除成功.

  1. 导出流程

在这里插入图片描述

在这里插入图片描述

导出到项目根目录下,导出成功.

在这里插入图片描述

  1. 运行流程

在这里插入图片描述

流程已运行成功.对应工具显示为绿色被正常执行.

从回调函数获取结果

海康视觉二次开发学习笔记8-从回调函数获取结果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2097334.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【windows】windows 如何实现 ps aux | grep xxx -c 统计某个进程数的功能?

windows 如何实现 ps aux | grep xxx -c 统计某个进程数的功能&#xff1f; 在Windows中&#xff0c;要实现类似Linux中ps aux | grep xxx -c的功能&#xff0c;即统计某个特定进程的数量&#xff0c;可以使用PowerShell或命令提示符&#xff08;cmd.exe&#xff09;来实现。 …

osgearth添加地形夸张系数VerticalScale时报E0393:不允许指针指向不完整的类类型的解决方法

如下图1所示: 图1 error C2027: 使用了未定义类型“osgEarth::TerrainEngineNode” E0393:不允许指针指向不完整的类类型“osgEarth::TerrainEngineNode”

SSM一篇就懂

01、初始Spring 什么是Spring&#xff0c;它有什么特点&#xff1f; Spring是一个容器框架&#xff0c;主要负责维护bean与bean之间的关系和生命周期。它具有以下特点&#xff1a; 控制反转&#xff08;IoC&#xff09;&#xff1a;通过依赖注入&#xff08;DI&#xff09;&…

自动化获取诊断信息(H3C网络设备)

介绍 在设备遇到个人无法处理的问题时&#xff0c;需要下载诊断信息发送给400处理哦&#xff0c;而通过传统的方式获取诊断信息需要通过多个步骤来获取&#xff0c;步骤繁琐&#xff0c;在设备数量过多的情况下&#xff0c;严重影响工作效率&#xff0c;而通过python自动化的方…

提交MR这个词儿您知道是什么意思吗?

作为测试的同学&#xff0c;是不是经常会听研发同学说提交MR呢&#xff1f;那么究竟什么是提交MR呢&#xff1f;在这篇文章中会告诉大家&#xff01; 在Git中&#xff0c;提交MR&#xff08;Merge Request&#xff0c;合并请求&#xff09;是在进行协作开发的一种常见方式&…

UPDF 编辑器怎么样,值得购买吗?

如今 PDF 工具可谓是五花八门&#xff0c;但不少工具在滥竽充数&#xff0c;软件里塞满广告&#xff0c;界面也是十几年前的风格。 近一两年火起来的 UPDF 编辑器&#xff0c;凭借体积轻巧、视效轻盈、体验轻快、多平台等特点&#xff0c;在同类产品中脱颖而出&#xff0c;成为…

科研绘图系列:python语言散点图和密度分布图(scatter density plot)

介绍 散点图(Scatter Plot)是一种数据可视化技术,用于显示两个变量之间的关系。它通过在直角坐标系中绘制数据点来展示数据的分布和趋势。每个数据点在横轴(X轴)和纵轴(Y轴)上都有一个坐标值,分别对应两个变量的数值。 密度分布图是一种统计图表,用于表示数据的分布…

100特殊效果技能包:100 Special Skills Effects Pack

总计177个, 包括100个概念FX&#xff01; 这个资源包含几个 FX。 魔术&#xff0c;冰块&#xff0c;鲜血&#xff0c;恶魔&#xff0c;毒药&#xff0c;行星&#xff0c;斜线&#xff0c;爆炸和其他特殊效果正等着您。 该asset的主要功能。: [1]:Standard, URP&HDRP(Distor…

unity游戏开发——标记物体 一目了然

Unity游戏开发:标记物体,让开发变得一目了然 “好读书&#xff0c;不求甚解&#xff1b;每有会意&#xff0c;便欣然忘食。” 本文目录&#xff1a; Unity游戏开发 Unity游戏开发:标记物体,让开发变得一目了然前言1. 什么是Tag&#xff1f;2. Unity中如何添加和管理Tag步骤1&am…

大模型工作交互过程

版权声明 本文原创作者:谷哥的小弟作者博客地址:http://blog.csdn.net/lfdfhl大模型的交互流程是一个复杂而精细的过程,它涉及从接收输入到生成输出的多个步骤。比如:你提问:中国的首都是哪里?它回答:中国的首都是北京;作为例子,大模型的工作流程可以大致归纳为以下几…

图片压缩算法优化

正常的rgb三通道的图片用以下压缩算法没啥问题 def zip_img0(image_bytes):压缩图片 :param image_bytes::return:try:image_np np.frombuffer(image_bytes, np.uint8)image cv2.imdecode(image_np, cv2.IMREAD_COLOR)h, w, c np.shape(image)max_size 600ratio min(1, m…

转换视频格式轻松搞定!3个小窍门助你轻松将mxf格式转mp4

你是否因为格式转换而烦恼&#xff1f;你是否经历过这样的情况&#xff1a;你想要在别的设备或平台上播放心仪的视频&#xff0c;但是你的视频文件是xmf格式的&#xff0c;很多设备都不支持这个格式&#xff0c;导致视频无法播放。现在&#xff0c;你需要把mxf格式转mp4格式。你…

黑马-Cloud21版-实用篇02:Nacos配置管理、集群,Feign远程调用、Feign的抽取优化,Gateway服务网关、网关中的跨域问题

SpringCloud实用篇02 0.学习目标 1.Nacos配置管理 Nacos除了可以做注册中心&#xff0c;同样可以做配置管理来使用。 1.1.统一配置管理 当微服务部署的实例越来越多&#xff0c;达到数十、数百时&#xff0c;逐个修改微服务配置就会让人抓狂&#xff0c;而且很容易出错。我…

编译器基础介绍

随着深度学习的不断发展&#xff0c;AI 模型结构在快速演化&#xff0c;底层计算硬件技术更是层出不穷&#xff0c;对于广大开发者来说不仅要考虑如何在复杂多变的场景下有效的将算力发挥出来&#xff0c;还要应对 AI 框架的持续迭代。AI 编译器就成了应对以上问题广受关注的技…

中资优配:什么股票容易涨停?放量涨停意味着什么?

什么股票简单涨停&#xff1a; 1、抢手题材股。每当商场出现新的方针改变、职业改造或严重利好事情时&#xff0c;相关股票往往会遭到资金的会合注重&#xff0c;从而引发涨停潮。例如一些职业股票在方针支撑和技术打破的两层驱动下&#xff0c;很简单成为商场短线资金追逐的抢…

qt实现三原色滑动条变色

在qt中有这样一个控件&#xff1a; 就是这个Horizontal Slider他的作用相信大家都知道了&#xff0c;也就是通过滑动来改变数值。今天我们就使用这个控件实现一个三原色滑动变色。 实现效果&#xff1a; 1.创建UI界面 这个就不用多说了&#xff0c;这个大家就按照我的这个去…

数据结构-双链表-详解

数据结构-双链表-详解 1.前言2.结构2.1双向2.2带头2.3循环 3.实现3.1结构体3.2初始化与删除初始化删除 3.3插入尾插头插 3.4删除尾删头删 3.4查找3.5pos位置的插入删除 1.前言 链表总共有八种&#xff1a;双向、单向&#xff1b;带头、不带头&#xff1b;循环、不循环。(8 2 …

C++第四十四弹---Lambda表达式的妙用:高效解决编程中的匿名函数问题

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】【C详解】 目录 1 lambda表达式 1.1 C98中的一个例子 1.2 lambda表达式 1.3 lambda表达式语法 1.4 函数对象与lambda表达式 1 lambda表达式 1.1 C98中的一个例…

上门家政系统

上门家政系统是基于likeadmin开发的上门家政预约系统&#xff0c;提供全部前后台无加密源代码&#xff0c;拥有强大的地图定位、在线预约、系统派单、指定派单、下单支付、核销订单等功能模块&#xff0c;用户端和师傅端完美融合&#xff0c;随时随地都能接单&#xff1b;可自定…

vs中在工具箱添加自定义控件numberTextBox

在winform中没有numberTextBox控件&#xff0c;为了将numberTextBox添加到工具箱当中&#xff0c;于是参考以下博客封装了一个自定义numberTextBox控件&#xff1a; winform 自定义数值(数字)输入框_c#如何设置一个框输入值-CSDN博客 接下来介绍以下封装和引用的过程&#xf…