Содержание

Delphi TWebBrowser интересные настройки

Отключаем вторую кнопку мышки

  var hMouseSecondButton: HHOOK;
 
  function MouseHookProc(nCode: Integer; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
  const IE_PROCNAME = 'Internet Explorer_Server';
  var
    szClassName: array[0..255] of Char;
    MouseMsg: PMouseHookStruct;
  begin
    if nCode >= 0 then begin
      if (wParam = WM_RBUTTONDOWN) or (wParam = WM_RBUTTONUP) then begin
        GetClassName(PMouseHookStruct(lParam)^.hwnd, szClassName, SizeOf(szClassName));
        if lstrcmp(@IE_PROCNAME[1], @szClassName[0]) = 0 then begin
          Result := HC_SKIP;
          Exit;
        end;
      end;
    end;
    Result := CallNextHookEx(hMouseSecondButton, nCode, wParam, lParam);
  end;
 
  procedure TfmMain.FormCreate(Sender: TObject);
    hMouseSecondButton := SetWindowsHookEx(WH_MOUSE, MouseHookProc, 0, GetCurrentThreadId);
  end;
 
  procedure TfmMain.FormDestroy(Sender: TObject);
  begin
    UnhookWindowsHookEx(hMouseSecondButton);
  end;

Переключение IE Compatible

<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta http-equiv="X-UA-Compatible" content="IE=10" />

Собрать текст из тегов script

var
    Doc     : IHTMLDocument2;
    Script  : IHTMLScriptElement;
    i       : Integer;
begin
    if Supports(WebBrowser1.Document, IHTMLDocument2, Doc) then begin
        for i:=0 to Doc.scripts.length-1 do begin
            Script:=Doc.scripts.item(i,i) as IHTMLScriptElement ;
            Memo1.Lines.Add (Script.text );
        end;
    end;
end;