📄 dasvrsdk.pas
字号:
unit DASVRSDK;
interface
uses ShareMem,Windows, Classes, Variants,SysUtils;
const SDK='ASOPCDA.dll';
type
CALLBACKSERVER = procedure(hServer: DWORD; wOperateType: WORD); stdcall;
CALLBACKGROUP = procedure(hServer: DWORD; szName: LPWSTR; wOperateType: WORD); stdcall;
CALLBACKITEM = procedure(hServer: DWORD; hTag: DWORD; wOperateType: WORD); stdcall;
CALLBACKTAG = procedure(Name: LPWSTR; Path: LPWSTR; hTag: PDWORD); stdcall;
CALLBACKREAD = procedure(hTag: DWORD; vValue: PVARIANT; wQuality: PWORD; pTimeStamp: PFILETIME; pError: PLongInt);stdcall;
CALLBACKREADEX = procedure(hTag: DWORD; PropID: DWORD; vValue: PVARIANT; wQuality: PWORD; pTimeStamp: PFILETIME; pError: PLongInt);stdcall;
CALLBACKWRITE = procedure(hTag: DWORD; pNewValue: VARIANT; pError: PLongInt); stdcall;
CALLBACKWRITEEX = procedure(hTag: DWORD; PropID: DWORD; pNewValue: VARIANT; pError: PLongInt); stdcall;
CALLBACKMSG = procedure(uMsg: LPCSTR); stdcall;
CALLBACKWRITEWITHINDEX = procedure(hTag: DWORD; dwIndex: DWORD; pValue: VARIANT; pError: PLongInt);stdcall;
CALLBACKREADWITHINDEX = procedure(hTag: DWORD; dwIndex: DWORD; pValue: PVARIANT; pQuality: PWORD; pTime: PFILETIME; pError: PLongInt);stdcall;
function CreateServer(pCLSID_Svr: LPCSTR; ServerRate: UINT): BOOL; stdcall;external SDK;
function FreeServer: BOOL; stdcall;external SDK;
function RegServer(pCLSID_Svr: LPCSTR; Name: LPCSTR; Descr: LPCSTR; ExePath: LPCSTR): BOOL; stdcall;external SDK;
function UnregServer(pCLSID_Svr: LPCSTR; Name: LPCSTR): BOOL; stdcall;external SDK;
function ActiveCode(UserName: LPCSTR; Password: LPCSTR): BOOL; stdcall;external SDK;
function SetServerState(state: WORD): BOOL; stdcall; external SDK;
function SetVensionInfo(VendorInfoString: LPCSTR;Major, Minor, Build: WORD): BOOL; stdcall; external SDK;
procedure ShutDown;stdcall; external SDK;
function RegTag(Handle: DWORD; Name: LPCSTR; Value: VARIANT; Quality: WORD; AccessRight: WORD): DWORD; stdcall; external SDK;
function RegTagEx(Handle: DWORD; Name: LPCSTR; ADataType: WORD; AcessRight: WORD): DWORD; stdcall; external SDK;
function UnregTag(Handle: THandle): BOOL; stdcall; external SDK;
function SetTagQualifier(Qualifier: Char):BOOL; stdcall; external SDK;
function AddTagProperty(Handle: DWORD; Name: LPCSTR; PropertyID: DWORD; Description: LPCSTR; Value: Variant): BOOL; stdcall; external SDK;
function AddTagPropertyEx(Handle: DWORD; Name: LPCSTR; PropertyID: DWORD; Description: LPCSTR; DataType: WORD): BOOL; stdcall; external SDK;
function SetTagProperty(Handle: DWORD; PropertyID: DWORD; Value: VARIANT): BOOL; stdcall; external SDK;
function UpdateTagWithTimeStamp(Handle: DWORD; Value: VARIANT;Quality: WORD; TimeStamp: FILETIME): BOOL; stdcall;external SDK;
function UpdateTag(Handle: DWORD; Value: VARIANT;Quality: WORD): BOOL; stdcall;external SDK;
function SetWriteCallback(lpCallback: CALLBACKWRITE): BOOL; stdcall;external SDK;
function SetWriteCallbackEx(lpCallback: CALLBACKWRITEEX): BOOL; stdcall;external SDK;
function SetReadCallback(lpCallback: CALLBACKREAD): BOOL; stdcall;external SDK;
function SetReadCallbackEx(lpCallback: CALLBACKREADEX): BOOL; stdcall;external SDK;
function SetServerNotify(lpCallback: CALLBACKSERVER): BOOL; stdcall;external SDK;
function SetGroupNotify(lpCallback: CALLBACKGROUP): BOOL; stdcall;external SDK;
function SetItemNotify(lpCallback: CALLBACKITEM): BOOL; stdcall;external SDK;
function SetTagNotify(lpCallback: CALLBACKTAG): BOOL; stdcall;external SDK;
function SetLogNotify(lpCallback: CALLBACKMSG): BOOL; stdcall;external SDK;
function RegTagWithIndex(Handle: DWORD; dwIndex: DWORD; Name: LPCSTR; Value: VARIANT; Quality: WORD; AccessRight: WORD): DWORD; stdcall; external SDK;
function SetWriteCallbackWithIndex(lpCallback: CALLBACKWRITEWITHINDEX): BOOL; stdcall;external SDK;
function SetReadCallbackWithIndex(lpCallback: CALLBACKREADWITHINDEX): BOOL; stdcall;external SDK;
// procedure WriteCallback(handle: DWORD; pNewValue: VARIANT; pError: PLongInt); stdcall;
// procedure ReadCallback(handle: DWORD; vValue: PVARIANT; wQuality: PWORD; pTimeStamp: PFILETIME; pError: PLongInt);stdcall;
// procedure WriteCallbackWithIndex(handle: DWORD; dwIndex: DWORD; pNewValue: VARIANT; pError: PLongInt); stdcall;
// procedure ReadCallbackWithIndex(handle: DWORD; dwIndex: DWORD; vValue: PVARIANT; wQuality: PWORD; pTimeStamp: PFILETIME; pError: PLongInt);stdcall;
// procedure ServerNotify(hServer: DWORD; wOperateType: WORD); stdcall;
// procedure GroupNotify(hServer: DWORD; szName: LPWSTR; wOperateType: WORD); stdcall;
// procedure ItemNotify(hServer, hTag: DWORD; wOperateType: WORD); stdcall;
// procedure TagNotify(Name, Path: LPWSTR; hTag: PDWORD); stdcall;
// procedure OpcLog(uMsg: LPWSTR); stdcall;
implementation
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -