⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dasvrsdk.h

📁 简单实现了OPC功能的代码实例大家参考一下吧
💻 H
字号:
#include "stdafx.h"

const long ID_TIMER=1000;
typedef struct Tag
{
	CString cID;
	DWORD hHWND;
	long vType;
	WORD lQuality;
	FILETIME ft;
	VARIANT vValue;
}TAG;
extern TAG TagList[32];
extern long TagCount;
extern long ServerCount;

typedef BOOL  (WINAPI * CREATESERVER)(LPCSTR, UINT);
typedef BOOL  (WINAPI * FREESERVER)();
typedef BOOL  (WINAPI * SETSERVERSTATE)(DWORD);
typedef BOOL  (WINAPI * ACTIVECODE)(LPCSTR,LPCSTR);
typedef VOID  (WINAPI * SETVERSIONINFO)(LPCSTR,WORD,WORD,WORD);
typedef VOID  (WINAPI * SHUTDOWN)(VOID);

typedef BOOL  (WINAPI * REGSERVER)(LPCSTR, LPCSTR,LPCSTR,LPCSTR);
typedef BOOL  (WINAPI * UNREGSERVER)(LPCSTR,LPCSTR);
typedef BOOL  (WINAPI * REGSERVERASSERVICE)(LPCSTR);

typedef DWORD (WINAPI * REGTAG)(DWORD,LPCSTR,VARIANT,WORD,WORD);
typedef DWORD (WINAPI * REGTAGEX)(DWORD,LPCSTR,WORD,WORD);
typedef BOOL  (WINAPI * UNREGTAG)(DWORD);
typedef BOOL  (WINAPI * SETTAGQUALIFIER)(CHAR);
typedef BOOL  (WINAPI * ADDTAGPROPERTY)(DWORD,DWORD,LPCSTR,VARIANT);
typedef BOOL  (WINAPI * ADDTAGPROPERTYEX)(DWORD,DWORD,LPCSTR,WORD);
typedef BOOL  (WINAPI * SETTAGPROPERTY)(DWORD,DWORD,LPCSTR,VARIANT);

typedef BOOL  (WINAPI * UPDATETAGWITHTIMESTAMP)(DWORD, VARIANT,WORD,FILETIME);
typedef BOOL  (WINAPI * UPDATETAG)(DWORD, VARIANT,WORD);

typedef VOID  (WINAPI * WRITECALLBACK)(DWORD,VARIANT,DWORD*);
typedef VOID  (WINAPI * WRITECALLBACKEX)(DWORD,DWORD,VARIANT,DWORD*);
typedef VOID  (WINAPI * READCALLBACK)(DWORD,VARIANT*,WORD*,FILETIME*,DWORD*);
typedef VOID  (WINAPI * READCALLBACKEX)(DWORD,DWORD,VARIANT*,WORD*,FILETIME*,DWORD*);
typedef BOOL  (WINAPI * SETWRITECALLBACK)(WRITECALLBACK);
typedef BOOL  (WINAPI * SETWRITECALLBACKEX)(WRITECALLBACKEX);
typedef BOOL  (WINAPI * SETREADCALLBACK)(READCALLBACK);
typedef BOOL  (WINAPI * SETREADCALLBACKEX)(READCALLBACKEX);

typedef VOID  (WINAPI * SERVERNOTIFY)(DWORD,WORD);
typedef VOID  (WINAPI * GROUPNOTIFY)(DWORD,LPCSTR,WORD);
typedef VOID  (WINAPI * ITEMNOTIFY)(DWORD,DWORD,WORD);
typedef VOID  (WINAPI * TAGNOTIFY)(LPCSTR,LPCSTR,DWORD*);
typedef VOID  (WINAPI * LOGNOTIFY)(LPCSTR);
typedef BOOL  (WINAPI * SETSERVERNOTIFY)(SERVERNOTIFY);
typedef BOOL  (WINAPI * SETGROUPNOTIFY)(GROUPNOTIFY);
typedef BOOL  (WINAPI * SETITEMNOTIFY)(ITEMNOTIFY);
typedef BOOL  (WINAPI * SETTAGNOTIFY)(TAGNOTIFY);
typedef BOOL  (WINAPI * SETLOGNOTIFY)(LOGNOTIFY);

extern HMODULE hLibrary;
extern CREATESERVER CreateServer;
extern FREESERVER FreeServer;
extern SETSERVERSTATE SetServerState;
extern SETVERSIONINFO SetVersionInfo;
extern ACTIVECODE ActiveCode;
extern SHUTDOWN shutDown;

extern REGSERVER RegServer;
extern UNREGSERVER UnregServer;

extern REGTAG RegTag;
extern REGTAGEX RegTagEx;
extern UNREGTAG UnregTag;
extern SETTAGQUALIFIER SetTagQualifier;
extern ADDTAGPROPERTY AddTagProperty;
extern ADDTAGPROPERTYEX AddTagPropertyEx;
extern SETTAGPROPERTY SetTagProperty;


extern UPDATETAGWITHTIMESTAMP UpdateTagWithTimeStamp;
extern UPDATETAG UpdateTag;
extern SETWRITECALLBACK SetWriteCallback;
extern SETWRITECALLBACKEX SetWriteCallbackEx;
extern SETREADCALLBACK SetReadCallback;
extern SETREADCALLBACKEX SetReadCallbackEx;
extern SETSERVERNOTIFY SetServerNotify;
extern SETGROUPNOTIFY SetGroupNotify;
extern SETITEMNOTIFY SetItemNotify;
extern SETTAGNOTIFY SetTagNotify;
extern SETLOGNOTIFY SetLogNotify;


extern void __stdcall WriteCallback(DWORD handle,VARIANT pNewValue,DWORD* pDeviceError);
extern void __stdcall ReadCallback(DWORD handle,VARIANT* pNewValue,WORD* Quality, FILETIME* ft, DWORD* pDeviceError);
extern void __stdcall ServerNotify(DWORD handle, WORD wOperate);
extern BOOL InitOPCDef();
extern BOOL FreeOPCDef();

const LPCSTR OPCClsID ="{6E751971-72F1-439F-A6BE-0586D0F86860}";
const LPCSTR OPCProgID="OPC.ASVCDEMO.1";
const LPCSTR OPCDescr ="Agilewill co.ltd";
extern CWnd* m_WND;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -