一、背景及问题

话不多说,直接上问题:

1.“Ivi.Visa.GlobalResourceManager”的类型初始值设定项引发异常。

应用程序: xx.exe Framework 版本: v4.0.30319 说明: 由于未经处理的异常,进程终止。异常信息: System.DllNotFoundException 在 Ivi.Visa.ConflictManager.Internal.NativeMethods.VISACM_Close() 在 Ivi.Visa.ConflictManager.ConflictManager.Finalize()

2.VISA status code = ERROR_RSRC_NFOUND (0xBFFF0011 hex, -1073807343 decimal)
VI_ERROR_RSRC_NFOUND: No matching resources found / no more matches

IVI和VISA不多做介绍,上述问题出现的场景是,C#程序里调用Keysight的81160A信号发生器,在已经安装了开发环境的电脑上程序是可以正常运行,在同事电脑上就回产生问题1的错误并且软件崩溃掉(事件查看器——Windows日志)。

二、解决思路

1.先尝试按顺序安装IVI Shared ComponentsIVI.NET Shared Components(实际上没有必要,因为C#程序中已经引用了对应的静态库,不然调用代码是编译不通过的,并且程序安装包已经将引用的dll打包在程序根目录下,即使未安装.net驱动以至于将dll放入全局程序集缓存 (GAC)中,也是不影响在软件根目录下找到引用dll的)

2.尝试安装VISA and VISA.NET Shared Components(官网原文:VISA and VISA.NET Shared Components install common components needed to provided consistency across VISA implementations from multiple vendors. These installers are not available on this download page because they are distributed as part of a vendor's installer for its VISA implementation. Please contact a vendor directly if you wish to use these installers separately.),大意是这玩意不能直接安装,都是在供应商的软件里实现的(灵光一现,转折来了

3.设备供应商是Keysight,安装其依赖库软件“IOLibSuite_18_1_24130.exe”,安装后问题1不再出现,变为问题2且软件崩溃问题不再发生

4.安装Keysight另一个通过API可以调用供应商所有设备执行指令的软件“CommandExpert_MSI_1_9_034.exe”,问题2解决

三、问题总结

产生问题的原因在于,同事电脑上开发环境几乎空白,相对于开发环境,最直接的方式就是找到差异(安装供应商的依赖库——思路3、用于验证API的官方软件——思路4)

至于标题为何和IVI、VISA强相关,是因为博主之前在调用罗德施瓦茨(R&S)示波器的调试过程中,也是遇到各种调用不起来的问题,亦是同样的解决思路:

1.前提是安装了基本依赖驱动或其他软件,调试过程中发现导致error的问题

2.使用官方demo软件或代码进行验证(若官方未提供,相信在git hub或其他代码托管平台上也能找到)

3.若demo软件不能正常调用则可能需要重新检查依赖(比如某个型号设备的专有驱动需要另外下载),对比官方demo代码对自身代码进行检查

4.若问题仍存在,就经验来说,可能解决的操作有:检查被调用设备的配置(一般是远程调用接口设置一定要打开)、检查防火墙设置(若被调用设备上有操作系统,需要允许被调用应用通过防火墙)等等

5.一般通过上述流程即可自己解决大部分问题,若问题仍无法解决,建议联系供应商官方技术支持(为何将技术支持放在最后的原因是,进行了上述操作至少会对设备调用过程有个大致了解,不至于和人家沟通时需要把概念向你解释半天,有助于提高自身解决问题的能力,也有助于对方帮我们快速定位问题)。

依赖IVI、VISA的设备调用问题相关推荐

  1. Python 调用中控门禁并包装成webservice供移动设备调用。

    前段时间做了个小试验,用Python 调用中控门禁并包装成webservice供移动设备调用. 移动端用的是泛微的OA企业微信端. 实现手机远程开门效果,拿着手机,走到哪,哪的门就自动开了,很屌的样子 ...

  2. 先锋音讯VAA-云录音服务器-无需依赖电脑的录音设备

    先锋音讯VAA-云录音服务器,标准19寸机架式设计,可以安装在机柜里面节省空间,完全独立无须依赖电脑即可工作的录音设备,采用最新的C/S架构,可外接显示器.扬声器和键鼠等,网络接口,用户通过外设即可完 ...

  3. Linux USB HUB识别usb设备调用流程

    插入usb设备通过dmesg查看内核打印信息 查看内核源码的调用流程

  4. android接口调用超时,RCA:收单设备调用云端接口频繁超时排查总结

    研发中心/王鹏 2019年7月 关键词:okhttp,安卓,连接复用,开源软件bug 一.背景知识: okhttp已是安卓项目中被广泛使用的网络请求开源库,它有如下特性: 1.支持http/2,允许所 ...

  5. linux PCI驱动调用字符设备驱动方式

    上一篇文章写了字符设备驱动的基本结构及访问方式,在实际应用时首先需要绑定自己的硬件设备.本篇主要描述字符设备驱动与PCI接口类型的设备访问方式(内核为2.6.24及以上的方法,测试内核为2.6.32) ...

  6. 属性面板 脚本_如何在组态王中实现同类型设备公用操作面板的调用---干货

    在用组态王做工程项目的过程中,同类型设备比较常见,比如阀门XV0101和XV0102,或者更多的阀门.它们有相同类型的点,同时点的数量也完全一样.完全相同.比如:XV0101阀门有DI点:开到为.关到 ...

  7. 在Android和iOS设备上调用C++代码

    不少Android和iOS项目中,因为种种原因不得不调用C/C++代码.这篇文章主要讲述如何通过Objective-C++.NDK技术在iOS及Android设备上调用C/C++代码. 主要工作原理 ...

  8. 试水VISA编程(2)——一键读取示波器数据

    在熟悉了SCPI的语法后,现在开始着手编写上位机程序.正如Guide文件所言,上位机可以用多种语言编写.然而为了借鉴学长的VB程序,所以我也用了VB这种号称已经要被淘汰的语言. 1.在安装IO lib ...

  9. Windows CE设备驱动开发之电源管理

    4.7电源管理 电源管理模块管理设备电源,从而全面改进操作系统的电源使用效率:它所有设备的电源使用,同时能与不支持电源管理的应用程序及驱动程序共存. 使用电源管理可以有效的减少目标设备的电源消耗,同时 ...

  10. SpringCloud OpenFeign 远程HTTP服务调用用法与原理

    在 openFeign 未出现前,Spring 提供了 RestTemplate 作为远程服务调用的客户端,提供了多种便捷访问远程 Http 服务的方法,能够大大提高客户端的编写效率.由于文章内容会使 ...

最新文章

  1. 问题集锦(26-29)
  2. ASP.NET设置焦点到输入框
  3. js实现按下删除键清空文本框内容
  4. 批处理命令 / 延迟环境变量扩展
  5. 【技术史】数据中台的前世今生
  6. tpm php,TPM系列
  7. Java面试之ArrayList为什么线程不安全?
  8. Kubernetes之Pod调度
  9. HashMap——ConcurrentHashMap
  10. mac php gd(mac osx 10.9.4)
  11. [转]windows2003的IIS详细设置方法
  12. kotlin中List,Map,数组的使用
  13. English trip V1 - 1.How Do You Feel Now? Teacher:Lamb Key:形容词(Adjectives)
  14. 呕心编写的《金牌网管师——金牌网吧网管》
  15. 九月十月百度人搜,阿里巴巴,腾讯华为小米搜狗笔试面试八十题(2012年度笔试面试八十题)
  16. sam文件获取与解密
  17. r语言做绘制精美pcoa图_科学网—R语言 PCA PCoA ggplot2 - 靳泽星的博文
  18. CRC校验原理及CRC-8简单校验函数设计
  19. 2019最新 BAT、TMD等公司技术面试题及其答案
  20. 分享124个PHP源码,总有一款适合您

热门文章

  1. 小奇猫物语之产品经理篇(1)
  2. weixin045基于微信小程序的网上商城+ssm
  3. vue、elementUI框架
  4. 翻车!全球最大 OA 出版商MDPI旗下所有期刊被拉入黑名单
  5. 小梅哥11——UART串口发送模块设计
  6. 快看.改变你人生的时刻到来。
  7. spring data jpa项目启动报错,Caused by: org.hibernate.AnnotationException: No identifier specified for enti
  8. 16_python笔记-正则爬虫-高阶函数
  9. 2018BNU校赛总决赛
  10. QT表白墙信息管理系统(武汉大学)