?? opcda.pas
字號:
OPCGROUPHEADER = record
dwSize: DWORD;
dwItemCount: DWORD;
hClientGroup: OPCHANDLE;
dwTransactionID: DWORD;
hrStatus: HResult;
end;
POPCGROUPHEADER = ^OPCGROUPHEADER;
OPCITEMHEADER1 = record
hClient: OPCHANDLE;
dwValueOffset: DWORD;
wQuality: Word;
wReserved: Word;
ftTimeStampItem: TFileTime;
end;
POPCITEMHEADER1 = ^OPCITEMHEADER1;
OPCITEMHEADER1ARRAY = array[0..65535] of OPCITEMHEADER1;
POPCITEMHEADER1ARRAY = ^OPCITEMHEADER1ARRAY;
OPCITEMHEADER2 = record
hClient: OPCHANDLE;
dwValueOffset: DWORD;
wQuality: Word;
wReserved: Word;
end;
POPCITEMHEADER2 = ^OPCITEMHEADER2;
OPCITEMHEADER2ARRAY = array[0..65535] of OPCITEMHEADER2;
POPCITEMHEADER2ARRAY = ^OPCITEMHEADER2ARRAY;
OPCGROUPHEADERWRITE = record
dwItemCount: DWORD;
hClientGroup: OPCHANDLE;
dwTransactionID: DWORD;
hrStatus: HResult;
end;
POPCGROUPHEADERWRITE = ^OPCGROUPHEADERWRITE;
OPCITEMHEADERWRITE = record
hClient: OPCHANDLE;
dwError: HResult;
end;
POPCITEMHEADERWRITE = ^OPCITEMHEADERWRITE;
OPCITEMHEADERWRITEARRAY = array[0..65535] of OPCITEMHEADERWRITE;
POPCITEMHEADERWRITEARRAY = ^OPCITEMHEADERWRITEARRAY;
OPCITEMSTATE = record
hClient: OPCHANDLE;
ftTimeStamp: TFileTime;
wQuality: Word;
wReserved: Word;
vDataValue: OleVariant;
end;
POPCITEMSTATE = ^OPCITEMSTATE;
OPCITEMSTATEARRAY = array[0..65535] of OPCITEMSTATE;
POPCITEMSTATEARRAY = ^OPCITEMSTATEARRAY;
OPCSERVERSTATUS = record
ftStartTime: TFileTime;
ftCurrentTime: TFileTime;
ftLastUpdateTime: TFileTime;
dwServerState: OPCSERVERSTATE;
dwGroupCount: DWORD;
dwBandWidth: DWORD;
wMajorVersion: Word;
wMinorVersion: Word;
wBuildNumber: Word;
wReserved: Word;
szVendorInfo: POleStr;
end;
POPCSERVERSTATUS = ^OPCSERVERSTATUS;
OPCITEMDEF = record
szAccessPath: POleStr;
szItemID: POleStr;
bActive: BOOL;
hClient: OPCHANDLE;
dwBlobSize: DWORD;
pBlob: PByteArray;
vtRequestedDataType: TVarType;
wReserved: Word;
end;
POPCITEMDEF = ^OPCITEMDEF;
OPCITEMDEFARRAY = array[0..65535] of OPCITEMDEF;
POPCITEMDEFARRAY = ^OPCITEMDEFARRAY;
OPCITEMATTRIBUTES = record
szAccessPath: POleStr;
szItemID: POleStr;
bActive: BOOL;
hClient: OPCHANDLE;
hServer: OPCHANDLE;
dwAccessRights: DWORD;
dwBlobSize: DWORD;
pBlob: PByteArray;
vtRequestedDataType: TVarType;
vtCanonicalDataType: TVarType;
dwEUType: OPCEUTYPE;
vEUInfo: OleVariant;
end;
POPCITEMATTRIBUTES = ^OPCITEMATTRIBUTES;
OPCITEMATTRIBUTESARRAY = array[0..65535] of OPCITEMATTRIBUTES;
POPCITEMATTRIBUTESARRAY = ^OPCITEMATTRIBUTESARRAY;
OPCITEMRESULT = record
hServer: OPCHANDLE;
vtCanonicalDataType: TVarType;
wReserved: Word;
dwAccessRights: DWORD;
dwBlobSize: DWORD;
pBlob: PByteArray;
end;
POPCITEMRESULT = ^OPCITEMRESULT;
OPCITEMRESULTARRAY = array[0..65535] of OPCITEMRESULT;
POPCITEMRESULTARRAY = ^OPCITEMRESULTARRAY;
OPCITEMPROPERTY = record
vtDataType: TVarType;
wReserved: Word;
dwPropertyID: DWORD;
szItemID: POleStr;
szDescription: POleStr;
vValue: OleVariant;
hrErrorID: HResult;
dwReserved: DWORD;
end;
POPCITEMPROPERTY = ^OPCITEMPROPERTY;
OPCITEMPROPERTYARRAY = array[0..65535] of OPCITEMPROPERTY;
POPCITEMPROPERTYARRAY = ^OPCITEMPROPERTYARRAY;
OPCITEMPROPERTIES = record
hrErrorID: HResult;
dwNumProperties: DWORD;
pItemProperties: POPCITEMPROPERTYARRAY;
dwReserved: DWORD;
end;
POPCITEMPROPERTIES = ^OPCITEMPROPERTIES;
OPCITEMPROPERTIESARRAY = array[0..65535] of OPCITEMPROPERTIES;
POPCITEMPROPERTIESARRAY = ^OPCITEMPROPERTIESARRAY;
OPCBROWSEELEMENT = record
szName: POleStr;
szItemID: POleStr;
dwFlagValue: DWORD;
dwReserved: DWORD;
ItemProperties: OPCITEMPROPERTIES;
end;
POPCBROWSEELEMENT = ^OPCBROWSEELEMENT;
OPCBROWSEELEMENTARRAY = array[0..65535] of OPCBROWSEELEMENT;
POPCBROWSEELEMENTARRAY = ^OPCBROWSEELEMENTARRAY;
OPCITEMVQT = record
vDataValue: OleVariant;
bQualitySpecified: BOOL;
wQuality: Word;
wReserved: Word;
bTimeStampSpecified: BOOL;
dwReserved: DWORD;
ftTimeStamp: TFileTime;
end;
POPCITEMVQT = ^OPCITEMVQT;
OPCITEMVQTARRAY = array[0..65535] of OPCITEMVQT;
POPCITEMVQTARRAY = ^OPCITEMVQTARRAY;
// *********************************************************************//
// Interface: IOPCServer
// GUID: {39C13A4D-011E-11D0-9675-0020AFD8ADB3}
// *********************************************************************//
IOPCServer = interface(IUnknown)
['{39C13A4D-011E-11D0-9675-0020AFD8ADB3}']
function AddGroup(
szName: POleStr;
bActive: BOOL;
dwRequestedUpdateRate: DWORD;
hClientGroup: OPCHANDLE;
pTimeBias: PLongint;
pPercentDeadband: PSingle;
dwLCID: DWORD;
out phServerGroup: OPCHANDLE;
out pRevisedUpdateRate: DWORD;
const riid: TIID;
out ppUnk: IUnknown): HResult; stdcall;
function GetErrorString(
dwError: HResult;
dwLocale: TLCID;
out ppString: POleStr): HResult; stdcall;
function GetGroupByName(
szName: POleStr;
const riid: TIID;
out ppUnk: IUnknown): HResult; stdcall;
function GetStatus(
out ppServerStatus: POPCSERVERSTATUS): HResult; stdcall;
function RemoveGroup(
hServerGroup: OPCHANDLE;
bForce: BOOL): HResult; stdcall;
function CreateGroupEnumerator(
dwScope: OPCENUMSCOPE;
const riid: TIID;
out ppUnk: IUnknown): HResult; stdcall;
end;
// *********************************************************************//
// Interface: IOPCServerPublicGroups
// GUID: {39C13A4E-011E-11D0-9675-0020AFD8ADB3}
// *********************************************************************//
IOPCServerPublicGroups = interface(IUnknown)
['{39C13A4E-011E-11D0-9675-0020AFD8ADB3}']
function GetPublicGroupByName(
szName: POleStr;
const riid: TIID;
out ppUnk: IUnknown): HResult; stdcall;
function RemovePublicGroup(
hServerGroup: OPCHANDLE;
bForce: BOOL): HResult; stdcall;
end;
// *********************************************************************//
// Interface: IOPCBrowseServerAddressSpace
// GUID: {39C13A4F-011E-11D0-9675-0020AFD8ADB3}
// *********************************************************************//
IOPCBrowseServerAddressSpace = interface(IUnknown)
['{39C13A4F-011E-11D0-9675-0020AFD8ADB3}']
function QueryOrganization(
out pNameSpaceType: OPCNAMESPACETYPE): HResult; stdcall;
function ChangeBrowsePosition(
dwBrowseDirection: OPCBROWSEDIRECTION;
szString: POleStr): HResult; stdcall;
function BrowseOPCItemIDs(
dwBrowseFilterType: OPCBROWSETYPE;
szFilterCriteria: POleStr;
vtDataTypeFilter: TVarType;
dwAccessRightsFilter: DWORD;
out ppIEnumString: IEnumString): HResult; stdcall;
function GetItemID(
szItemDataID: POleStr;
out szItemID: POleStr): HResult; stdcall;
function BrowseAccessPaths(
szItemID: POleStr;
out ppIEnumString: IEnumString): HResult; stdcall;
end;
// *********************************************************************//
// Interface: IOPCGroupStateMgt
// GUID: {39C13A50-011E-11D0-9675-0020AFD8ADB3}
// *********************************************************************//
IOPCGroupStateMgt = interface(IUnknown)
['{39C13A50-011E-11D0-9675-0020AFD8ADB3}']
function GetState(
out pUpdateRate: DWORD;
out pActive: BOOL;
out ppName: POleStr;
out pTimeBias: Longint;
out pPercentDeadband: Single;
out pLCID: TLCID;
out phClientGroup: OPCHANDLE;
out phServerGroup: OPCHANDLE): HResult; stdcall;
function SetState(
pRequestedUpdateRate: PDWORD;
out pRevisedUpdateRate: DWORD;
pActive: PBOOL;
pTimeBias: PLongint;
pPercentDeadband: PSingle;
pLCID: PLCID;
phClientGroup: POPCHANDLE): HResult; stdcall;
function SetName(
szName: POleStr): HResult; stdcall;
function CloneGroup(
szName: POleStr;
const riid: TIID;
out ppUnk: IUnknown): HResult; stdcall;
end;
// *********************************************************************//
// Interface: IOPCPublicGroupStateMgt
// GUID: {39C13A51-011E-11D0-9675-0020AFD8ADB3}
// *********************************************************************//
IOPCPublicGroupStateMgt = interface(IUnknown)
['{39C13A51-011E-11D0-9675-0020AFD8ADB3}']
function GetState(
out pPublic: BOOL): HResult; stdcall;
function MoveToPublic: HResult; stdcall;
end;
// *********************************************************************//
// Interface: IOPCSyncIO
// GUID: {39C13A52-011E-11D0-9675-0020AFD8ADB3}
// *********************************************************************//
IOPCSyncIO = interface(IUnknown)
['{39C13A52-011E-11D0-9675-0020AFD8ADB3}']
function Read(
dwSource: OPCDATASOURCE;
dwCount: DWORD;
phServer: POPCHANDLEARRAY;
out ppItemValues: POPCITEMSTATEARRAY;
out ppErrors: PResultList): HResult; stdcall;
function Write(
dwCount: DWORD;
phServer: POPCHANDLEARRAY;
pItemValues: POleVariantArray;
out ppErrors: PResultList): HResult; stdcall;
end;
// *********************************************************************//
// Interface: IOPCAsyncIO
// GUID: {39C13A53-011E-11D0-9675-0020AFD8ADB3}
// *********************************************************************//
IOPCAsyncIO = interface(IUnknown)
['{39C13A53-011E-11D0-9675-0020AFD8ADB3}']
function Read(
dwConnection: DWORD;
dwSource: OPCDATASOURCE;
dwCount: DWORD;
phServer: POPCHANDLEARRAY;
out pTransactionID: DWORD;
out ppErrors: PResultList): HResult; stdcall;
function Write(
dwConnection: DWORD;
dwCount: DWORD;
phServer: POPCHANDLEARRAY;
pItemValues: POleVariantArray;
out pTransactionID: DWORD;
out ppErrors: PResultList): HResult; stdcall;
function Refresh(
dwConnection: DWORD;
dwSource: OPCDATASOURCE;
out pTransactionID: DWORD): HResult; stdcall;
function Cancel(
dwTransactionID: DWORD): HResult; stdcall;
end;
// *********************************************************************//
// Interface: IOPCItemMgt
// GUID: {39C13A54-011E-11D0-9675-0020AFD8ADB3}
// *********************************************************************//
IOPCItemMgt = interface(IUnknown)
['{39C13A54-011E-11D0-9675-0020AFD8ADB3}']
function AddItems(
dwCount: DWORD;
pItemArray: POPCITEMDEFARRAY;
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -