谁用过delphi 连接visa 设备能给个例子吗?自己试着写了写,但是没成功,主要是string一调用就错。请各位高手帮忙。本人就这么多分了,全给了。急啊

解决方案 »

  1.   

    改过了,但调用时提示错误,“access violation at address 631473A2 in module 'visa32.dll'.write of address 004280B4" 
      

  2.   

    这种错光说是没用的,得贴代码
    还有我真不知道visa是啥
      

  3.   

    在VB中声明以下函数
    Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long
    Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long
    调用时  Call viOpenDefaultRM(defrm)
       Call viFindRsrc(defrm, "USB?*", list, nmatches, matches)
    能发现设备 nmatches=1
    而用delphi做以下声明 
    function viOpenDefaultRM(var sesn: integer): Integer; stdcall;external 'visa32.dll' ;
    function viFindRsrc(sesn: integer; expr: pchar; vi: integer; var retCount: integer; var desc:pchar): integer; stdcall; external 'visa32.dll';
    调用时
      viopendefaultrm(rm);
      viFindRsrc(rm,'usb?*',list,nmatches, matches);
    没发现设备 nmatches=0
    请问哪错了。请各位大侠指点一下吧