亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? opcda.pas

?? DELPHI編寫OPC(一): 編寫OPC客戶端程序
?? PAS
?? 第 1 頁 / 共 3 頁
字號:

{*******************************************************}
{                                                       }
{       OPC Data Access 3.0 (and earlier versions)      }
{                                                       }
{       Delphi conversion generated and supplied by     }
{       Mike Dillamore                                  }
{       OPC Programmers' Connection                     }
{       http://www.opcconnect.com/                      }
{       mailto:opc@opcconnect.com                       }
{                                                       }
{       Improvements contributed by                     }
{       Martin Lafferty                                 }
{       Production Robots Engineering Ltd               }
{       http://www.prel.co.uk/                          }
{       mailto:prOpcKit@prel.co.uk                      }
{                                                       }
{*******************************************************}

unit OPCDA;

{$IFDEF VER150}
{$WARN UNSAFE_TYPE OFF}
{$ENDIF}

// ************************************************************************ //
// Type Lib: OPCProxy.dll
// IID\LCID: {3B540B51-0378-4551-ADCC-EA9B104302BF}\0 - Data Access 3.0
// IID\LCID: {B28EEDB2-AC6F-11D1-84D5-00608CB8A7E9}\0 - Data Access 2.0
// ************************************************************************ //

interface

uses
  Windows, ActiveX, SysUtils, OPCtypes;

// *********************************************************************//
// GUIDS declared in the TypeLibrary                                    //
// *********************************************************************//
const
  LIBID_OPCDA: TGUID = '{3B540B51-0378-4551-ADCC-EA9B104302BF}';
  IID_IOPCServer: TIID = '{39C13A4D-011E-11D0-9675-0020AFD8ADB3}';
  IID_IOPCServerPublicGroups: TIID = '{39C13A4E-011E-11D0-9675-0020AFD8ADB3}';
  IID_IOPCBrowseServerAddressSpace: TIID =
                                      '{39C13A4F-011E-11D0-9675-0020AFD8ADB3}';
  IID_IOPCGroupStateMgt: TIID = '{39C13A50-011E-11D0-9675-0020AFD8ADB3}';
  IID_IOPCPublicGroupStateMgt: TIID = '{39C13A51-011E-11D0-9675-0020AFD8ADB3}';
  IID_IOPCSyncIO: TIID = '{39C13A52-011E-11D0-9675-0020AFD8ADB3}';
  IID_IOPCAsyncIO: TIID = '{39C13A53-011E-11D0-9675-0020AFD8ADB3}';
  IID_IOPCItemMgt: TIID = '{39C13A54-011E-11D0-9675-0020AFD8ADB3}';
  IID_IEnumOPCItemAttributes: TIID = '{39C13A55-011E-11D0-9675-0020AFD8ADB3}';
  IID_IOPCDataCallback: TIID = '{39C13A70-011E-11D0-9675-0020AFD8ADB3}';
  IID_IOPCAsyncIO2: TIID = '{39C13A71-011E-11D0-9675-0020AFD8ADB3}';
  IID_IOPCItemProperties: TIID = '{39C13A72-011E-11D0-9675-0020AFD8ADB3}';
  IID_IOPCItemDeadbandMgt: TIID = '{5946DA93-8B39-4ec8-AB3D-AA73DF5BC86F}';
  IID_IOPCItemSamplingMgt: TIID = '{3E22D313-F08B-41a5-86C8-95E95CB49FFC}';
  IID_IOPCBrowse: TIID = '{39227004-A18F-4b57-8B0A-5235670F4468}';
  IID_IOPCItemIO: TIID = '{85C0B427-2893-4cbc-BD78-E5FC5146F08F}';
  IID_IOPCSyncIO2: TIID = '{730F5F0F-55B1-4c81-9E18-FF8A0904E1FA}';
  IID_IOPCAsyncIO3: TIID = '{0967B97B-36EF-423e-B6F8-6BFF1E40D39D}';
  IID_IOPCGroupStateMgt2: TIID = '{8E368666-D72E-4f78-87ED-647611C61C9F}';

  CATID_OPCDAServer10: TGUID = '{63D5F430-CFE4-11d1-B2C8-0060083BA1FB}';
  CATID_OPCDAServer20: TGUID = '{63D5F432-CFE4-11d1-B2C8-0060083BA1FB}';
  CATID_OPCDAServer30: TGUID = '{CC603642-66D7-48f1-B69A-B625E73652D7}';
  CATID_XMLDAServer10: TGUID = '{3098EDA4-A006-48b2-A27F-247453959408}';

// *********************************************************************//
// Declaration of Enumerations defined in Type Library                  //
// *********************************************************************//
type
  OPCDATASOURCE = TOleEnum;
const
  OPC_DS_CACHE  = 1;
  OPC_DS_DEVICE = 2;

type
  OPCBROWSETYPE = TOleEnum;
const
  OPC_BRANCH = 1;
  OPC_LEAF   = 2;
  OPC_FLAT   = 3;

type
  OPCNAMESPACETYPE = TOleEnum;
const
  OPC_NS_HIERARCHIAL = 1;
  OPC_NS_FLAT        = 2;

type
  OPCBROWSEDIRECTION = TOleEnum;
const
  OPC_BROWSE_UP   = 1;
  OPC_BROWSE_DOWN = 2;
  OPC_BROWSE_TO   = 3;

type
  OPCEUTYPE = TOleEnum;
const
  OPC_NOENUM     = 0;
  OPC_ANALOG     = 1;
  OPC_ENUMERATED = 2;

type
  OPCSERVERSTATE = TOleEnum;
const
  OPC_STATUS_RUNNING    = 1;
  OPC_STATUS_FAILED     = 2;
  OPC_STATUS_NOCONFIG   = 3;
  OPC_STATUS_SUSPENDED  = 4;
  OPC_STATUS_TEST       = 5;
  OPC_STATUS_COMM_FAULT = 6;

type
  OPCENUMSCOPE = TOleEnum;
const
  OPC_ENUM_PRIVATE_CONNECTIONS = 1;
  OPC_ENUM_PUBLIC_CONNECTIONS  = 2;
  OPC_ENUM_ALL_CONNECTIONS     = 3;
  OPC_ENUM_PRIVATE             = 4;
  OPC_ENUM_PUBLIC              = 5;
  OPC_ENUM_ALL                 = 6;

type
  OPCBROWSEFILTER = TOleEnum;
const
  OPC_BROWSE_FILTER_ALL      = 1;
  OPC_BROWSE_FILTER_BRANCHES = 2;
  OPC_BROWSE_FILTER_ITEMS    = 3;

// *********************************************************************//
// Constants                                                            //
// *********************************************************************//
// Category description strings
const
   OPC_CATEGORY_DESCRIPTION_DA10    = 'OPC Data Access Servers Version 1.0';
   OPC_CATEGORY_DESCRIPTION_DA20    = 'OPC Data Access Servers Version 2.0';
   OPC_CATEGORY_DESCRIPTION_DA30    = 'OPC Data Access Servers Version 3.0';
   OPC_CATEGORY_DESCRIPTION_XMLDA10 = 'OPC XML Data Access Servers Version 1.0';

// Values for access rights mask
const
  OPC_READABLE  = $01;
  OPC_WRITEABLE = $02;

// Values for browse element flags
const
  OPC_BROWSE_HASCHILDREN = $01;
  OPC_BROWSE_ISITEM      = $02;

// *********************************************************************//
// OPC Quality flags                                                    //
// *********************************************************************//
// Masks for extracting quality subfields
// (note 'status' mask also includes 'Quality' bits)
const
  OPC_QUALITY_MASK           = $C0;
  OPC_STATUS_MASK            = $FC;
  OPC_LIMIT_MASK             = $03;

// Values for QUALITY_MASK bit field
const
  OPC_QUALITY_BAD            = $00;
  OPC_QUALITY_UNCERTAIN      = $40;
  OPC_QUALITY_GOOD           = $C0;

// STATUS_MASK Values for Quality = BAD
const
  OPC_QUALITY_CONFIG_ERROR              = $04;
  OPC_QUALITY_NOT_CONNECTED             = $08;
  OPC_QUALITY_DEVICE_FAILURE            = $0C;
  OPC_QUALITY_SENSOR_FAILURE            = $10;
  OPC_QUALITY_LAST_KNOWN                = $14;
  OPC_QUALITY_COMM_FAILURE              = $18;
  OPC_QUALITY_OUT_OF_SERVICE            = $1C;
  OPC_QUALITY_WAITING_FOR_INITIAL_DATA  = $20;

// STATUS_MASK Values for Quality = UNCERTAIN
const
  OPC_QUALITY_LAST_USABLE    = $44;
  OPC_QUALITY_SENSOR_CAL     = $50;
  OPC_QUALITY_EGU_EXCEEDED   = $54;
  OPC_QUALITY_SUB_NORMAL     = $58;

// STATUS_MASK Values for Quality = GOOD
const
  OPC_QUALITY_LOCAL_OVERRIDE = $D8;

// Values for Limit Bitfield
const
  OPC_LIMIT_OK    = $00;
  OPC_LIMIT_LOW   = $01;
  OPC_LIMIT_HIGH  = $02;
  OPC_LIMIT_CONST = $03;

// *********************************************************************//
// Data Access 2.0 Property IDs:                                        //
// *********************************************************************//
const
  OPC_PROP_CDT            = 1;
  OPC_PROP_VALUE          = 2;
  OPC_PROP_QUALITY        = 3;
  OPC_PROP_TIME           = 4;
  OPC_PROP_RIGHTS         = 5;
  OPC_PROP_SCANRATE       = 6;

  OPC_PROP_UNIT           = 100;
  OPC_PROP_DESC           = 101;
  OPC_PROP_HIEU           = 102;
  OPC_PROP_LOEU           = 103;
  OPC_PROP_HIRANGE        = 104;
  OPC_PROP_LORANGE        = 105;
  OPC_PROP_CLOSE          = 106;
  OPC_PROP_OPEN           = 107;
  OPC_PROP_TIMEZONE       = 108;

  OPC_PROP_DSP            = 200;
  OPC_PROP_FGC            = 201;
  OPC_PROP_BGC            = 202;
  OPC_PROP_BLINK          = 203;
  OPC_PROP_BMP            = 204;
  OPC_PROP_SND            = 205;
  OPC_PROP_HTML           = 206;
  OPC_PROP_AVI            = 207;

  OPC_PROP_ALMSTAT        = 300;
  OPC_PROP_ALMHELP        = 301;
  OPC_PROP_ALMAREAS       = 302;
  OPC_PROP_ALMPRIMARYAREA = 303;
  OPC_PROP_ALMCONDITION   = 304;
  OPC_PROP_ALMLIMIT       = 305;
  OPC_PROP_ALMDB          = 306;
  OPC_PROP_ALMHH          = 307;
  OPC_PROP_ALMH           = 308;
  OPC_PROP_ALML           = 309;
  OPC_PROP_ALMLL          = 310;
  OPC_PROP_ALMROC         = 311;
  OPC_PROP_ALMDEV         = 312;

// *********************************************************************//
// Data Access 3.0 Property IDs:                                        //
// *********************************************************************//
const
  OPC_PROPERTY_DATATYPE           = 1;
  OPC_PROPERTY_VALUE              = 2;
  OPC_PROPERTY_QUALITY            = 3;
  OPC_PROPERTY_TIMESTAMP          = 4;
  OPC_PROPERTY_ACCESS_RIGHTS      = 5;
  OPC_PROPERTY_SCAN_RATE          = 6;
  OPC_PROPERTY_EU_TYPE            = 7;
  OPC_PROPERTY_EU_INFO            = 8;
  OPC_PROPERTY_EU_UNITS           = 100;
  OPC_PROPERTY_DESCRIPTION        = 101;
  OPC_PROPERTY_HIGH_EU            = 102;
  OPC_PROPERTY_LOW_EU             = 103;
  OPC_PROPERTY_HIGH_IR            = 104;
  OPC_PROPERTY_LOW_IR             = 105;
  OPC_PROPERTY_CLOSE_LABEL        = 106;
  OPC_PROPERTY_OPEN_LABEL         = 107;
  OPC_PROPERTY_TIMEZONE           = 108;
  OPC_PROPERTY_CONDITION_STATUS   = 300;
  OPC_PROPERTY_ALARM_QUICK_HELP   = 301;
  OPC_PROPERTY_ALARM_AREA_LIST    = 302;
  OPC_PROPERTY_PRIMARY_ALARM_AREA = 303;
  OPC_PROPERTY_CONDITION_LOGIC    = 304;
  OPC_PROPERTY_LIMIT_EXCEEDED     = 305;
  OPC_PROPERTY_DEADBAND           = 306;
  OPC_PROPERTY_HIHI_LIMIT         = 307;
  OPC_PROPERTY_HI_LIMIT           = 308;
  OPC_PROPERTY_LO_LIMIT           = 309;
  OPC_PROPERTY_LOLO_LIMIT         = 310;
  OPC_PROPERTY_CHANGE_RATE_LIMIT  = 311;
  OPC_PROPERTY_DEVIATION_LIMIT    = 312;
  OPC_PROPERTY_SOUND_FILE         = 313;

// *********************************************************************//
// Data Access 3.0 Property Descriptions:                               //
// *********************************************************************//
const
  OPC_PROPERTY_DESC_DATATYPE           = 'Item Canonical Data Type';
  OPC_PROPERTY_DESC_VALUE              = 'Item Value';
  OPC_PROPERTY_DESC_QUALITY            = 'Item Quality';
  OPC_PROPERTY_DESC_TIMESTAMP          = 'Item Timestamp';
  OPC_PROPERTY_DESC_ACCESS_RIGHTS      = 'Item Access Rights';
  OPC_PROPERTY_DESC_SCAN_RATE          = 'Server Scan Rate';
  OPC_PROPERTY_DESC_EU_TYPE            = 'Item EU Type';
  OPC_PROPERTY_DESC_EU_INFO            = 'Item EU Info';
  OPC_PROPERTY_DESC_EU_UNITS           = 'EU Units';
  OPC_PROPERTY_DESC_DESCRIPTION        = 'Item Description';
  OPC_PROPERTY_DESC_HIGH_EU            = 'High EU';
  OPC_PROPERTY_DESC_LOW_EU             = 'Low EU';
  OPC_PROPERTY_DESC_HIGH_IR            = 'High Instrument Range';
  OPC_PROPERTY_DESC_LOW_IR             = 'Low Instrument Range';
  OPC_PROPERTY_DESC_CLOSE_LABEL        = 'Contact Close Label';
  OPC_PROPERTY_DESC_OPEN_LABEL         = 'Contact Open Label';
  OPC_PROPERTY_DESC_TIMEZONE           = 'Item Timezone';
  OPC_PROPERTY_DESC_CONDITION_STATUS   = 'Condition Status';
  OPC_PROPERTY_DESC_ALARM_QUICK_HELP   = 'Alarm Quick Help';
  OPC_PROPERTY_DESC_ALARM_AREA_LIST    = 'Alarm Area List';
  OPC_PROPERTY_DESC_PRIMARY_ALARM_AREA = 'Primary Alarm Area';
  OPC_PROPERTY_DESC_CONDITION_LOGIC    = 'Condition Logic';
  OPC_PROPERTY_DESC_LIMIT_EXCEEDED     = 'Limit Exceeded';
  OPC_PROPERTY_DESC_DEADBAND           = 'Deadband';
  OPC_PROPERTY_DESC_HIHI_LIMIT         = 'HiHi Limit';
  OPC_PROPERTY_DESC_HI_LIMIT           = 'Hi Limit';
  OPC_PROPERTY_DESC_LO_LIMIT           = 'Lo Limit';
  OPC_PROPERTY_DESC_LOLO_LIMIT         = 'LoLo Limit';
  OPC_PROPERTY_DESC_CHANGE_RATE_LIMIT  = 'Rate of Change Limit';
  OPC_PROPERTY_DESC_DEVIATION_LIMIT    = 'Deviation Limit';
  OPC_PROPERTY_DESC_SOUND_FILE         = 'Sound File';

type

// *********************************************************************//
// Forward declaration of interfaces defined in Type Library            //
// *********************************************************************//
  IOPCServer = interface;
  IOPCServerPublicGroups = interface;
  IOPCBrowseServerAddressSpace = interface;
  IOPCGroupStateMgt = interface;
  IOPCPublicGroupStateMgt = interface;
  IOPCSyncIO = interface;
  IOPCAsyncIO = interface;
  IOPCItemMgt = interface;
  IEnumOPCItemAttributes = interface;
  IOPCDataCallback = interface;
  IOPCAsyncIO2 = interface;
  IOPCItemProperties = interface;
  IOPCItemDeadbandMgt = interface;
  IOPCItemSamplingMgt = interface;
  IOPCBrowse = interface;
  IOPCItemIO = interface;
  IOPCSyncIO2 = interface;
  IOPCAsyncIO3 = interface;
  IOPCGroupStateMgt2 = interface;

// *********************************************************************//
// Declaration of structures, unions and aliases.                       //
// *********************************************************************//

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久久久毛片| 自拍偷拍国产亚洲| 亚洲最大的成人av| 午夜激情久久久| aa级大片欧美| 日韩一区二区三区在线观看| 亚洲综合精品自拍| 欧美日韩久久久久久| 中文字幕亚洲在| 91在线视频免费91| 在线播放中文一区| 麻豆成人久久精品二区三区小说| 欧美欧美欧美欧美首页| 日韩一区欧美二区| 2024国产精品视频| 99精品视频在线免费观看| 欧美日韩久久一区| 欧美一级日韩一级| 欧美亚洲综合久久| 国产成人精品亚洲日本在线桃色| 亚洲素人一区二区| 国产一区二区伦理| 精品sm捆绑视频| 麻豆91在线观看| 欧美一区二区三区免费| 亚洲一区二区三区在线| 色国产精品一区在线观看| 国产精品高潮呻吟| 白白色亚洲国产精品| 国产精品免费观看视频| thepron国产精品| 中文字幕日韩av资源站| 91在线看国产| 一区二区三区日韩| 欧美亚洲禁片免费| 亚洲五月六月丁香激情| 欧美日韩精品三区| 日韩中文字幕麻豆| 日韩女优视频免费观看| 国内精品视频666| 国产亚洲精品aa午夜观看| 国产精品77777| 国产女主播视频一区二区| 国产成人精品网址| 综合分类小说区另类春色亚洲小说欧美 | 亚洲综合激情网| 欧美在线free| 青青草原综合久久大伊人精品优势| 欧美一区二区成人| 国产精品白丝jk黑袜喷水| 中文字幕亚洲一区二区va在线| 一本大道久久a久久综合| 亚洲综合999| 日韩欧美卡一卡二| 成人一区二区三区视频| 洋洋av久久久久久久一区| 欧美精品777| 国产精品1024| 一区二区三区在线免费播放| 欧美三级在线视频| 国产精品影视网| 亚洲欧美日韩久久| 欧美丰满少妇xxxbbb| 国产精品18久久久久| 一区二区三区中文在线观看| 51精品视频一区二区三区| 久久aⅴ国产欧美74aaa| 国产精品国产三级国产有无不卡 | 制服.丝袜.亚洲.另类.中文| 韩国精品免费视频| 亚洲美女免费视频| 日韩亚洲电影在线| 91麻豆6部合集magnet| 麻豆91小视频| 亚洲欧美另类小说| 日韩精品一区二区三区四区视频| 91在线国内视频| 久久国产精品免费| 亚洲自拍偷拍网站| 国产喂奶挤奶一区二区三区| 欧美日韩dvd在线观看| 成人av午夜影院| 精品一区二区国语对白| 亚洲国产裸拍裸体视频在线观看乱了| 精品国产a毛片| 欧美日韩精品一区二区| 91在线观看成人| 国内成人免费视频| 免费成人av在线| 亚洲高清免费在线| 亚洲欧美视频在线观看| 欧美国产日韩一二三区| 欧美va天堂va视频va在线| 欧美午夜电影网| jiyouzz国产精品久久| 国产一区在线看| 免费不卡在线视频| 欧美a级理论片| 天堂一区二区在线免费观看| 亚洲天堂福利av| 国产精品色哟哟| 欧美经典三级视频一区二区三区| 欧美一级片在线| 91精品国产色综合久久不卡蜜臀 | 麻豆成人av在线| 全部av―极品视觉盛宴亚洲| 亚洲综合色丁香婷婷六月图片| 中文字幕一区二区三区在线播放| 日本一区二区在线不卡| 久久日韩精品一区二区五区| 精品乱码亚洲一区二区不卡| 日韩一区二区三| 日韩一二三四区| 日韩精品一区国产麻豆| 欧美成人在线直播| 精品av综合导航| 国产偷国产偷精品高清尤物 | 精品国精品国产| 欧美成人a∨高清免费观看| 日韩午夜精品视频| 精品国产免费视频| 国产亚洲欧洲一区高清在线观看| 久久亚洲春色中文字幕久久久| 久久久久88色偷偷免费| 国产性天天综合网| 中文字幕一区二区三区视频| 亚洲丝袜制服诱惑| 亚洲成av人片在www色猫咪| 午夜精品久久久久| 久久99精品一区二区三区| 国产高清成人在线| 成人福利视频在线| 欧美系列亚洲系列| 91精品国产综合久久久久久久 | 亚洲人xxxx| 亚洲一区二区精品视频| 视频在线观看一区二区三区| 久久精品国产999大香线蕉| 激情综合一区二区三区| 懂色av一区二区三区免费看| 99国内精品久久| 欧美偷拍一区二区| 精品国产污网站| 亚洲免费观看高清| 日本三级韩国三级欧美三级| 国产精品一区二区不卡| 欧美性欧美巨大黑白大战| 91精品国产综合久久精品性色| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 欧美在线免费播放| 日韩视频不卡中文| 国产精品乱码久久久久久| 亚洲国产一区视频| 国产精品1区二区.| 欧美午夜精品电影| 久久九九全国免费| 亚洲高清久久久| 国产很黄免费观看久久| 欧美色网一区二区| 久久久久99精品国产片| 亚洲一区二区三区四区五区中文 | 免费久久99精品国产| 成人av一区二区三区| 欧美一区二区三区在线电影| 中文字幕欧美激情| 日本成人超碰在线观看| 99久久免费精品高清特色大片| 日韩女优电影在线观看| 一区二区三区免费在线观看| 粉嫩aⅴ一区二区三区四区| 欧美疯狂性受xxxxx喷水图片| 国产精品夫妻自拍| 久久97超碰国产精品超碰| 欧美三级视频在线播放| 中文字幕在线观看不卡视频| 极品少妇xxxx精品少妇偷拍| 欧美精品丝袜久久久中文字幕| 亚洲免费在线视频| 不卡一区二区中文字幕| 国产无遮挡一区二区三区毛片日本| 秋霞成人午夜伦在线观看| 91麻豆.com| 亚洲品质自拍视频| 99热国产精品| 中文字幕欧美国产| 丰满放荡岳乱妇91ww| 久久久久成人黄色影片| 韩国v欧美v亚洲v日本v| 日韩欧美高清在线| 日本免费新一区视频| 欧美精品乱码久久久久久按摩| 亚洲影视在线观看| 欧美在线看片a免费观看| 一区二区三区免费| 日本二三区不卡| 一区二区在线观看不卡| 色欧美日韩亚洲| 一区二区三区日韩精品视频| 色av成人天堂桃色av| 亚洲制服丝袜av|