Qt

qt dllは、達成するようにプログラムされた計測器ドライバライブラリを呼び出します



Qt Dll Calls Instrument Driver Libraries Programmed Achieve



に' qt +ビザプログラムの使用-管理 'ビザデモqtライブラリへの簡単な呼び出しを実現するには
この記事では、プログラム可能なインストルメンテーションを実装するために、ライブラリに対するインストルメントドライバqt呼び出しを使用することを試みます。

開発環境

  • システム:Windows 10
  • 環境:qt 5.80
  • ライブラリ:ビザ16.0 + ivi 16.0

構成プロセス

ダイナミックライブラリのドライバライブラリは、主に.h.lib.dllで構成され、ダイナミックライブラリの呼び出し方法に従って試行されます。



1.依存関係を追加します

in .pro次のコードファイルを追加します

win32 { INCLUDEPATH += 'C:Program Files (x86)IVI FoundationVISAWinNTInclude' INCLUDEPATH += 'C:Program Files (x86)IVI FoundationIVIInclude' LIBS += 'C:Program Files (x86)IVI FoundationVISAWinNTlibmscvisa32.lib' LIBS += 'C:Program Files (x86)IVI FoundationIVILibmscivi.lib' LIBS += 'E:WorkSpaceqtVisaDemoqt_dll_DemoAVSAAVSA.lib' }

2.ライブラリ関数を呼び出してみてください

#include #include 'AVSA/AVSA.h' #include int main(int argc, char *argv[]) { QCoreApplication a(argc, argv) ViSession AVSA_Handler ViByte rdBuff[100] int retCount = 0 ViStatus status status = AVSA_init('TCPIP0::127.0.0.1::5000::SOCKET', VI_FALSE, VI_FALSE, &AVSA_Handler) ViSession viAVSA_Handler = Ivi_IOSession(AVSA_Handler) retCount = viQueryf( viAVSA_Handler, '*IDN? ', '%s', rdBuff) AVSA_close( AVSA_Handler) return a.exec() }

注意

  1. ドライブライブラリiviが実現するため、ビザライブラリviQueryf ViSession変換ViSession viAVSA_Handler = Ivi_IOSession(AVSA_Handler)を使用する場合は処理する必要があります。



  2. コードの呼び出し中にエラーが発生しました。 起動時にプログラムがコード0xc0000135で終了しました ダイナミックライブラリである必要がありますdll実行可能ファイルディレクトリにファイルする前に

参照