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

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

?? opcadvisesink.~pas

?? OPC 源程序示例
?? ~PAS
字號:
unit OPCAdviseSink;
//***************異步讀寫類**************//
//
//
//
//***************************************//
interface

uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls,ComObj,OPCtypes,OPCDA, OPCutils,ActiveX;

type
  // class to receive IDataObject data change advises
  TOPCAdviseSink = class(TInterfacedObject, IAdviseSink)
  public
    procedure OnDataChange(const formatetc: TFormatEtc;
                            const stgmed: TStgMedium); stdcall;
    procedure OnViewChange(dwAspect: Longint; lindex: Longint); stdcall;
    procedure OnRename(const mk: IMoniker); stdcall;
    procedure OnSave; stdcall;
    procedure OnClose; stdcall;
  end;

implementation

// TOPCAdviseSink methods

// OPC standard says this is the only method we need to fill in
procedure TOPCAdviseSink.OnDataChange(const formatetc: TFormatEtc;
                                      const stgmed: TStgMedium);
var
  PG: POPCGROUPHEADER;
  PI1: POPCITEMHEADER1ARRAY;
  PI2: POPCITEMHEADER2ARRAY;
  PV: POleVariant;
  I: Integer;
  PStr: PWideChar;
  NewValue: string;
  WithTime: Boolean;
  ClientHandle: OPCHANDLE;
  Quality: Word;
begin
  // the rest of this method assumes that the item header array uses
  // OPCITEMHEADER1 or OPCITEMHEADER2 records,
  // so check this first to be defensive
  if (formatetc.cfFormat <> OPCSTMFORMATDATA) and
      (formatetc.cfFormat <> OPCSTMFORMATDATATIME) then Exit;
  // does the data stream provide timestamps with each value?
  WithTime := formatetc.cfFormat = OPCSTMFORMATDATATIME;

  PG := GlobalLock(stgmed.hGlobal);
  if PG <> nil then
  begin
    // we will only use one of these two values, according to whether
    // WithTime is set:
    PI1 := Pointer(PChar(PG) + SizeOf(OPCGROUPHEADER));
    PI2 := Pointer(PI1);
    if Succeeded(PG.hrStatus) then
    begin
      for I := 0 to PG.dwItemCount - 1 do
      begin
        if WithTime then
        begin
          PV := POleVariant(PChar(PG) + PI1[I].dwValueOffset);
          ClientHandle := PI1[I].hClient;
          Quality := (PI1[I].wQuality and OPC_QUALITY_MASK);
        end
        else begin
          PV := POleVariant(PChar(PG) + PI2[I].dwValueOffset);
          ClientHandle := PI2[I].hClient;
          Quality := (PI2[I].wQuality and OPC_QUALITY_MASK);
        end;
        if Quality = OPC_QUALITY_GOOD then
        begin
          // this test assumes we're not dealing with array data
          if TVarData(PV^).VType <> VT_BSTR then
          begin
            NewValue := VarToStr(PV^);
          end
          else begin
            // for BSTR data, the BSTR image follows immediately in the data
            // stream after the variant union;  the BSTR begins with a DWORD
            // character count, which we skip over as the BSTR is also
            // NULL-terminated
            PStr := PWideChar(PChar(PV) + SizeOf(OleVariant) + 4);
            NewValue := WideString(PStr);
          end;
          if WithTime then
          begin
            Writeln('New value for item ', ClientHandle, ' advised:  ',
                    NewValue, ' (with timestamp)');
          end
          else begin
            Writeln('New value for item ', ClientHandle, ' advised:  ',
                    NewValue);
          end;
        end
        else begin
          Writeln('Advise received for item ', ClientHandle,
                  ' , but quality not good');
        end;
      end;
    end;
    GlobalUnlock(stgmed.hGlobal);
  end;
end;

procedure TOPCAdviseSink.OnViewChange(dwAspect: Longint; lindex: Longint);
begin
end;

procedure TOPCAdviseSink.OnRename(const mk: IMoniker);
begin
end;

procedure TOPCAdviseSink.OnSave;
begin
end;

procedure TOPCAdviseSink.OnClose;
begin
end;

end.
 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美综合亚洲图片综合区| 国产成人综合网站| 亚洲人成人一区二区在线观看| 欧美精品一区二| 久久久久久夜精品精品免费| 精品福利av导航| 国产亚洲视频系列| 国产精品国产a| 亚洲美女屁股眼交| 亚洲一本大道在线| 国产中文字幕一区| 极品少妇一区二区三区精品视频 | 国产欧美日韩激情| 国产三级一区二区| 亚洲私人黄色宅男| 一区二区三区不卡在线观看| 日韩精品免费视频人成| 精品一二三四区| 成人中文字幕电影| 在线亚洲高清视频| 在线播放/欧美激情| 久久综合九色综合97婷婷女人 | 色婷婷久久久综合中文字幕 | 日韩影院在线观看| 久久国产免费看| 成人综合激情网| 在线观看91精品国产入口| 337p亚洲精品色噜噜| www久久精品| 亚洲一区中文日韩| 美美哒免费高清在线观看视频一区二区| 美女在线视频一区| 成人黄色在线看| 制服丝袜一区二区三区| 国产日韩欧美亚洲| 五月婷婷综合激情| 福利一区二区在线| 欧美美女一区二区三区| 国产性色一区二区| 亚洲大片精品永久免费| 国产成人精品午夜视频免费| 欧美日本一区二区三区四区| 久久久久国产成人精品亚洲午夜| 一区二区三区中文在线| 国产乱淫av一区二区三区| 在线观看日韩精品| 欧美国产综合一区二区| 日韩不卡在线观看日韩不卡视频| 成人综合激情网| 精品国产91久久久久久久妲己| 亚洲一区二区三区美女| 国产成人综合视频| 日韩精品一区二区在线| 亚洲福利电影网| 99re这里都是精品| 国产视频一区不卡| 免费人成精品欧美精品| 在线观看亚洲成人| 国产精品久久久久婷婷| 国产精品一区二区久久不卡| 日韩欧美高清在线| 性欧美疯狂xxxxbbbb| 91日韩精品一区| 国产精品国产三级国产| 懂色一区二区三区免费观看| 日韩免费高清电影| 日韩电影在线免费| 欧美视频自拍偷拍| 一区二区三区在线观看网站| 99这里只有精品| 亚洲欧洲三级电影| 不卡电影一区二区三区| 国产精品高清亚洲| 高清不卡在线观看| 亚洲一区二区成人在线观看| av福利精品导航| 国产精品久久久久久久久图文区 | 久久99精品久久久久久久久久久久| 欧美性淫爽ww久久久久无| 亚洲色欲色欲www| 色婷婷久久久综合中文字幕| 亚洲激情自拍偷拍| 色婷婷国产精品| 亚洲国产另类av| 欧美一区二区三区婷婷月色| 三级成人在线视频| 欧美一区二区二区| 久久成人精品无人区| 精品国产凹凸成av人网站| 国产一区二区在线视频| 中文字幕av不卡| 色呦呦国产精品| 水蜜桃久久夜色精品一区的特点| 日韩一级二级三级| 国产精品资源站在线| 国产精品免费丝袜| 在线观看欧美日本| 另类综合日韩欧美亚洲| 国产精品视频yy9299一区| 色老汉av一区二区三区| 日韩av午夜在线观看| 2023国产一二三区日本精品2022| 波多野结衣一区二区三区| 亚洲精品久久久蜜桃| 日韩一级在线观看| 国产精品一区二区男女羞羞无遮挡 | 精品在线观看视频| 国产精品午夜电影| 欧美日韩精品综合在线| 精久久久久久久久久久| 亚洲激情第一区| 精品久久久久久久人人人人传媒| gogo大胆日本视频一区| 日韩成人av影视| 成人免费一区二区三区在线观看| 91精品国产麻豆国产自产在线 | 1区2区3区欧美| 精品久久人人做人人爰| 91丝袜国产在线播放| 久久99这里只有精品| 亚洲精品免费在线| 久久综合色播五月| 精品视频123区在线观看| 国产成人啪午夜精品网站男同| 一区av在线播放| 国产精品视频观看| 欧美一级片在线观看| 91久久精品一区二区三区| 精品一区二区久久| 无吗不卡中文字幕| 亚洲美女屁股眼交3| 中文字幕乱码亚洲精品一区| 日韩一级欧美一级| 欧美日韩精品一区二区三区四区 | 亚洲成人中文在线| 中文字幕亚洲一区二区va在线| 欧美精品一区二区三区四区| 欧美精品欧美精品系列| 91性感美女视频| 99久久免费精品| av电影天堂一区二区在线观看| 狠狠色丁香九九婷婷综合五月| 日韩精品视频网站| 亚洲国产婷婷综合在线精品| 亚洲人被黑人高潮完整版| 国产清纯白嫩初高生在线观看91| 精品国产91乱码一区二区三区| 91精品福利在线一区二区三区| 欧美日韩亚洲综合| 欧美午夜精品电影| 欧美伊人久久久久久久久影院 | 午夜精品一区二区三区电影天堂| 综合网在线视频| 亚洲四区在线观看| 亚洲人123区| 亚洲综合网站在线观看| 一级中文字幕一区二区| 亚洲一本大道在线| 亚洲成人动漫一区| 日韩av不卡在线观看| 日韩av中文字幕一区二区| 日韩精品乱码免费| 久久99久久99小草精品免视看| 麻豆国产91在线播放| 国产一区二区三区在线观看免费 | 亚洲制服丝袜一区| 一区二区三区四区亚洲| 亚洲一区二区3| 视频一区二区国产| 蜜桃久久精品一区二区| 激情欧美日韩一区二区| 福利一区福利二区| 一本到不卡精品视频在线观看| 欧美中文一区二区三区| 日韩一区二区三区视频在线观看| 欧美精品一区二区三区四区| 中文字幕乱码一区二区免费| 亚洲综合激情另类小说区| 天堂久久久久va久久久久| 国产一区二区视频在线| 91一区在线观看| 日韩欧美自拍偷拍| 日韩美女视频一区二区| 视频一区视频二区中文字幕| 国产成人免费视频网站| 在线观看亚洲专区| 久久这里只有精品首页| 亚洲精选视频免费看| 狠狠色丁香久久婷婷综| 在线免费亚洲电影| 精品国产成人系列| 亚洲激情第一区| 国产麻豆成人传媒免费观看| 在线免费不卡视频| 26uuu国产日韩综合| 夜夜夜精品看看| 风间由美一区二区三区在线观看 | 国产综合色视频| 在线视频你懂得一区二区三区| 久久午夜免费电影|