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

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

?? uiemonitor.pas

?? IE 攔截,可以完成對IE 的控制,跟蹤等操作
?? PAS
字號:
unit UIEMonitor;

{$WARN SYMBOL_PLATFORM OFF}

interface

uses
  Windows, ActiveX, Classes, ComObj, SHDOCVW, Dialogs, SysUtils, Forms;
type
  TIEMonitor = class(TComObject, IDispatch, IObjectWithSite)
  public
    function GetTypeInfoCount(out Count:Integer):HResult;stdcall;
    function GetTypeInfo(Index,LocaleID:Integer;out TypeInfo):HResult;stdcall;
    function GetIDsOfNames(const IID:TGUID;Names:Pointer;
      NameCount,LocaleID:Integer;DispIDs:Pointer):HResult;stdcall;
    function SetSite(const pUnkSite:IUnknown):HResult;stdcall;
    function GetSite(const riid:TIID;out site:IUnknown):HResult;stdcall;
    function Invoke(DispID: Integer; const IID: TGUID; LocaleID: Integer;
      Flags: Word; var Params; VarResult, ExcepInfo, ArgErr: Pointer): HResult; stdcall;
  private
    IEThis:IWebBrowser2;
    Cookie:Integer;
  protected
  end;

const
  Class_IEMonitor: TGUID = '{47CFDDF9-6FBD-4C06-8752-24FEFBA10D51}';
  HasQuit=888;//標志已經退出
  
var
  isStart:Integer;//標志是否正在退出
 // WIMS:TWIMS;

implementation

uses ComServ;

procedure DoBeforeNavigate2(const pDisp:IDispatch;var URL:OleVariant;
  var Flags:OleVariant;var TargetFrameName:OleVariant;var PostData:OleVariant;
  var Headers:OleVariant;var Cancel:WordBool);
var
  s:string;
begin
  s:=URL;
  s:=uppercase(s);
  if pos('163',s)<>0 then  begin
        ShowMessage('notok');
        Cancel:=true;
  end else begin
  end;
end;

procedure DoDownloadComplete(IEThis:IWebBrowser2);
begin
  //可以在該函數中處理網頁文本以及圖象等信息
end;

procedure DoOnQuit;
begin
end;

procedure BuildPositionalDispIDs(pDispIDs:PDispIDList;const dps:TDispParams);
var
  i:Integer;
begin
  Assert(pDispIDs<>nil);
  for i:=0 to dps.cArgs-1 do
    pDispIDs^[i]:=dps.cArgs-1-i;
  if(dps.cNamedArgs<=0)then
    Exit;
  for i:=0 to dps.cNamedArgs-1 do
    pDispIDs^[dps.rgdispidNamedArgs^[i]]:=i;
end;

function TIEMonitor.Invoke(DispID: Integer; const IID: TGUID; LocaleID: Integer;
      Flags: Word; var Params; VarResult, ExcepInfo, ArgErr: Pointer): HResult;
type
  POleVariant=^OleVariant;
var
  dps:TDispParams absolute Params;
  bHasParams:Boolean;
  pDispIDs:PDispIDList;
  iDispIDsSize:Integer;
begin
  Result:=DISP_E_MEMBERNOTFOUND;
  pDispIDs:=nil;
  iDispIDsSize:=0;
  bHasParams:=(dps.cArgs>0);
  if(bHasParams)then
  begin
    iDispIDsSize:=dps.cArgs*SizeOf(TDispID);
    GetMem(pDispIDs,iDispIDsSize);
  end;
  try
    if(bHasParams)then BuildPositionalDispIDs(pDispIDs,dps);
    case DispID of
      104:begin
          DoDownLoadComplete(IEThis);
          Result:=S_OK;
        end;
      250:begin
          DoBeforeNavigate2(IDispatch(dps.rgvarg^[pDispIDs^[0]].dispVal),
            POleVariant(dps.rgvarg^[pDispIDs^[1]].pvarVal)^,
            POleVariant(dps.rgvarg^[pDispIDs^[2]].pvarVal)^,
            POleVariant(dps.rgvarg^[pDispIDs^[3]].pvarVal)^,
            POleVariant(dps.rgvarg^[pDispIDs^[4]].pvarVal)^,
            POleVariant(dps.rgvarg^[pDispIDs^[5]].pvarVal)^,
            dps.rgvarg^[pDispIDs^[6]].pbool^);
          Result:=S_OK;
        end; 
      253:begin
          DoOnQuit();
          Result:=S_OK;
        end;
    end;//end of case DispID of
  finally
    if(bHasParams)then
      FreeMem(pDispIDs,iDispIDsSize);
  end;
end;

function TIEMonitor.GetTypeInfo(Index,LocaleID:Integer;out TypeInfo):HResult;
begin
  Result:=E_NOTIMPL;
  Pointer(TypeInfo):=nil;
end;

function TIEMonitor.GetTypeInfoCount(out Count:Integer):HResult;
begin
  Result:=E_NOTIMPL;
  Count:=0;
end;

function TIEMonitor.GetIDsOfNames(const IID:TGUID;Names:Pointer;
  NameCount,LocaleID:Integer;DispIDs:Pointer):HResult;
begin
  Result:=E_NOTIMPL;
end;

function TIEMonitor.GetSite(const riid:TIID;out site:IUnknown):HResult;
begin
  //ShowMessage('執行了GetSite事件!');
  if(Assigned(IEThis))then
    Result:=IEThis.QueryInterface(riid,site)
  else Result:=E_FAIL;
end;

function TIEMonitor.SetSite(const pUnkSite:IUnknown):HResult;
var
  cmdTarget:IOleCommandTarget;
  Sp:IServiceProvider;
  CPC:IConnectionPointContainer;
  CP:IConnectionPoint;
begin
  //ShowMessage('執行了SetSite事件!');
  if(Assigned(pUnkSite))then
  begin
    cmdTarget:=(pUnkSite as IOleCommandTarget);
    Sp:=(CmdTarget as IServiceProvider);
    if(Assigned(Sp))then//獲得IE的WebBrowser接口,
      Sp.QueryService(IWebBrowserApp,IWebBrowser2,IEThis);
    if(Assigned(IEThis))then
    begin
      IEThis.QueryInterface(IConnectionPointContainer,CPC);//尋找連接點
      CPC.FindConnectionPoint(DWEBBrowserEvents2,CP);
      CP.Advise(Self,Cookie);//通過Advise方法建立Com自身與連接點的連接
    end;
  end;
  Result:=S_OK;
end;

initialization
  TComObjectFactory.Create(ComServer, TIEMonitor, Class_IEMonitor,
    'IEMonitor', '', ciMultiInstance, tmApartment);
  isStart:=HasQuit-1;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕一区二| 国产视频视频一区| 日本韩国精品在线| 不卡大黄网站免费看| 国产乱码精品一区二区三| 全国精品久久少妇| 另类人妖一区二区av| 日本va欧美va瓶| 天天影视涩香欲综合网| 日本美女一区二区三区视频| 亚洲地区一二三色| 日韩国产精品久久久久久亚洲| 午夜精品福利一区二区三区av| 日韩高清电影一区| 久久国内精品自在自线400部| 韩国三级中文字幕hd久久精品| 国产精品一二三四| 99久久精品一区二区| 欧美伊人久久大香线蕉综合69 | 18欧美乱大交hd1984| 中文字幕一区av| 一区二区三区四区蜜桃| 国产剧情在线观看一区二区| 激情六月婷婷久久| 色综合久久久久久久| 欧美日本一区二区在线观看| 欧美一区二区三区爱爱| 国产三级三级三级精品8ⅰ区| 国产精品免费网站在线观看| 亚洲一级二级三级在线免费观看| 日本不卡视频一二三区| 成人美女视频在线观看| 欧美日韩久久久一区| 久久丝袜美腿综合| 亚洲成人你懂的| 国产精品小仙女| 欧美日韩在线综合| 久久精品一区八戒影视| 亚洲mv大片欧洲mv大片精品| 国产综合一区二区| 欧美色视频在线| 欧美高清在线一区| 日韩av网站免费在线| 99久久婷婷国产综合精品电影| 7777精品伊人久久久大香线蕉超级流畅 | 久久夜色精品一区| 亚洲国产精品一区二区久久| 国产一区二区三区黄视频| 欧美性生交片4| 国产精品免费久久| 久国产精品韩国三级视频| 日本精品裸体写真集在线观看| 欧美精品一区二区精品网| 亚洲高清三级视频| 成人av电影在线播放| 久久综合一区二区| 奇米色一区二区三区四区| 一本大道久久a久久综合婷婷 | 中文字幕日韩精品一区| 蜜臀av性久久久久蜜臀aⅴ| 日本大香伊一区二区三区| 久久久综合视频| 男人的j进女人的j一区| 欧美无人高清视频在线观看| 亚洲视频在线观看一区| 成人免费av资源| 国产午夜精品一区二区三区嫩草| 免费观看30秒视频久久| 欧美老女人在线| 亚洲国产精品久久久久秋霞影院| 91在线精品一区二区| 中文字幕精品三区| 国产91综合网| 国产亚洲精品中文字幕| 激情深爱一区二区| 日韩精品一区二区三区中文不卡| 盗摄精品av一区二区三区| 欧美v日韩v国产v| 麻豆一区二区99久久久久| 欧美日韩成人综合在线一区二区| 亚洲成人高清在线| 欧美日韩国产一区| 日韩经典中文字幕一区| 欧美一级精品在线| 久久99精品国产| 久久久综合九色合综国产精品| 国产一区二区美女诱惑| 国产欧美日本一区二区三区| 国产精品888| 中文字幕中文字幕一区二区 | 中文字幕视频一区| 在线亚洲一区二区| 欧美亚洲综合网| 欧美午夜电影网| 国产精品久久久久一区二区三区| 国产在线国偷精品免费看| 欧美精品一区二区三区视频| 丁香激情综合国产| 亚洲一区二区三区四区在线免费观看| 91视频国产资源| 精品福利一二区| 色婷婷综合中文久久一本| 国产精品综合av一区二区国产馆| 琪琪一区二区三区| 日日夜夜免费精品视频| 亚洲福利视频一区二区| 亚洲一区二区视频在线| 亚洲欧美日韩电影| 综合激情成人伊人| 中文字幕一区二区三区在线观看| 中文字幕乱码亚洲精品一区 | 欧美电影免费观看高清完整版在| 欧美精品国产精品| 91精品国产免费久久综合| 欧美人妖巨大在线| 777久久久精品| 欧美成人一区二区三区在线观看| 3atv在线一区二区三区| 欧美一区二区三区小说| 3d成人h动漫网站入口| 日韩一区二区三区在线观看| 欧美一级爆毛片| 91精品国产91综合久久蜜臀| 欧美一区二区视频网站| 欧美一级xxx| 国产性色一区二区| 中文字幕中文乱码欧美一区二区| 亚洲欧美在线视频| 夜夜爽夜夜爽精品视频| 天堂av在线一区| 极品少妇一区二区三区精品视频 | 色久优优欧美色久优优| 欧美性猛交xxxx乱大交退制版 | 欧美伊人久久久久久久久影院| 精品视频在线视频| 亚洲欧美综合另类在线卡通| 国产精品久久久久久妇女6080| 亚洲欧美日韩国产一区二区三区| 玉米视频成人免费看| 五月激情综合网| 国产另类ts人妖一区二区| 成人国产在线观看| 欧美日韩一级视频| 欧美精品一区二区高清在线观看| 国产精品美日韩| 亚洲国产精品久久久久秋霞影院 | 99精品欧美一区二区三区综合在线| 99re66热这里只有精品3直播 | 亚洲女同一区二区| 日本不卡视频在线| 国产精品888| 欧洲生活片亚洲生活在线观看| 日韩一本二本av| 亚洲欧洲av另类| 久久9热精品视频| 色又黄又爽网站www久久| 日韩一区二区三区精品视频| 国产精品日日摸夜夜摸av| 亚洲一区二区三区中文字幕 | 日韩精品一区二| 亚洲美女少妇撒尿| 狠狠色狠狠色综合系列| 在线观看欧美精品| 久久色在线视频| 日韩在线a电影| www.性欧美| 欧美日韩国产首页在线观看| 欧美国产精品劲爆| 视频一区二区中文字幕| 99久久99精品久久久久久| 日韩欧美激情一区| 亚洲在线一区二区三区| 国产一二精品视频| 欧美一三区三区四区免费在线看| 国产精品视频麻豆| 久久99国产精品久久99果冻传媒| 欧美日韩一区三区四区| 国产精品成人在线观看| 国产一区三区三区| 日韩精品一区二区三区四区 | 欧美一级xxx| 亚洲一区视频在线| 波多野结衣一区二区三区| 欧美一区二区三区视频免费播放| 亚洲综合色成人| 97aⅴ精品视频一二三区| 国产精品网站在线| 高清国产一区二区三区| 欧美成人乱码一区二区三区| 午夜精品一区二区三区免费视频 | 乱一区二区av| 欧美福利一区二区| 日本亚洲最大的色成网站www| 91久久免费观看| 一区二区三区免费网站| 91免费版pro下载短视频| 国产精品私人影院| eeuss鲁片一区二区三区在线看| 精品国产免费久久| 精品一区二区三区免费|