現(xiàn)象
- GUI程序在客戶(hù)環(huán)境下啟動(dòng)不顯示窗口,沒(méi)有內(nèi)容提示
- 看進(jìn)程是活的,像是被什么給阻塞住了
- 程序依賴(lài)于QT庫(kù)和VISA
- 首先檢查QT庫(kù)的正常加載
- 由于不方便拆分出組件 widget,core,gui,network
- 利用QT自帶的例子來(lái)驗(yàn)證基本的gui庫(kù)是否正常
- 修改安裝目錄下的qt庫(kù)名稱(chēng),如qt5core.dll,看能否提示加載失敗
- 經(jīng)過(guò)上面的操作判定QT庫(kù)正常
- 檢查VISA庫(kù)
- 客戶(hù)環(huán)境下安裝了Keysight VISA和NI VISA的實(shí)現(xiàn)
-
初步估計(jì)這兩個(gè)庫(kù)是不兼容的
image.png
image.png - 兩個(gè)版本的大小有區(qū)別,Keysight的小,可能是因?yàn)镵eysight中的實(shí)現(xiàn)只是一個(gè)包裝器,真正的實(shí)現(xiàn)在另外的地方
-
用depends打開(kāi)查看符號(hào)表信息
image.png
結(jié)論
- NI-VISA和KEYSIGHT-VISA的實(shí)現(xiàn)不是二進(jìn)制兼容的
- 直接進(jìn)行替換混用會(huì)導(dǎo)致程序啟動(dòng)不正常


