我正在尝试从 OPC DA 服务器读取数据。我正在使用方法 SyncRead
SyncRead(short Source, int NumItems, ref Array ServerHandles, out Array Values, out Array Errors, out object Qualities, out object TimeStamps);
问题是我不确切知道参数值数组的类型。我正在这样做
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using OPCAutomation;
using EasyModbus;
using System.Threading;
using System.IO;
Array ServerHandles = new Array[ObjOPCGroup.OPCItems.Count];
Array Values = new Array[ObjOPCGroup.OPCItems.Count];
Array Errors = new Array[ObjOPCGroup.OPCItems.Count];
object Qualities = new object();
object TimeStamps = new object();
Array Values = new Array[ObjOPCGroup.OPCItems.Count];
ObjOPCGroup.SyncRead(
(short)OPCDataSource.OPCDevice,
ObjOPCGroup.OPCItems.Count,
ref ServerHandles,
out Values,
out Errors,
out Qualities,
out TimeStamps
);
当我启动应用程序时,我收到错误: System.Runtime.InteropServices.SafeArrayTypeMismatchException:指定的数组不是预期的类型
任何人都可以帮助我吗?
谢谢