小弟在做个OPC的客户端,在同步读items的函数 
FOPCGroup.SyncRead(Source,Numitems,@serverhandles,@myvalue,@errors); serverhandles,myvalue,errors都是静态数组,但是编译的时候老是通不过,说参数不对,苦闷无解来求助,多谢

解决方案 »

  1.   

    你的source写的是什么东西啊,
      

  2.   

    SyncRead(Source As Integer,NumItems As Long,_
    ServerHandles()As Long,ByRef Values()As Variant,_
    ByRef Errors()As Long,Optional ByRef Qualities As Variant,_
    Optional ByRef,TimeStamps As Variant)那位大哥,大姐能告诉小弟一下Source As Integer中的source是什么东西吗,我查是可以指定为OPCCache(缓冲器)或者OPCDevice(设备)。
    可是知道具体是什么东西,
      

  3.   

    SyncRead(Source As Integer,NumItems As Long,_ 
    ServerHandles()As Long,ByRef Values()As Variant,_ 
    ByRef Errors()As Long,Optional ByRef Qualities As Variant,_ 
    Optional ByRef,TimeStamps As Variant)那位大哥,大姐能告诉小弟一下Source As Integer中的source是什么东西吗,我查是可以指定为OPCCache(缓冲器)或者OPCDevice(设备)。 
    可是不知道具体是什么东西
      

  4.   

    Source的确指定的是OPCCache或者OPCDevice
    它的含义是当你执行同步读操作时,读取的数据来自OPC服务器的缓存还是来自硬件设备。我估计你是用的opcdaauto.dll控件吧。这个控件里专门定义了两个常量来表示Source,你可以使用对象浏览器查一下你引用的dll文件,应该能找到