Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.17;
Скачать: CL | DM;

Вниз

Блокировка рисунков в WebBrowser e   Найти похожие ветки 

 
НовичОк ©   (2004-08-07 04:10) [0]

Как можно предотвратить загрузку картинок при просмотре страницы в WebBrowser"e?

Заранее спасибо за ответы!


 
easy ©   (2004-08-07 10:33) [1]

написать наследника WebBrowser"а, перекрыть ему Invoke а там -

function TMyWebBrowser.Invoke(DispID: Integer; const IID: TGUID;
 LocaleID: Integer; Flags: Word; var Params; VarResult, ExcepInfo,
 ArgErr: Pointer): HResult;
const
 DISPID_AMBIENT_DLCONTROL = -5512;
 DLCTL_DLIMAGES = $00000010;
begin
if (Flags and DISPATCH_PROPERTYGET <> 0) and (VarResult <> nil) then
 begin
   Result := S_OK;
   case DispID of DISPID_AMBIENT_DLCONTROL:
     PVariant(VarResult)^ := Integer(not DLCTL_DLIMAGES);
   else
     Result := DISP_E_MEMBERNOTFOUND;
   end;
 end else
   Result := DISP_E_MEMBERNOTFOUND;
end;


примерно так..


 
easy ©   (2004-08-07 11:52) [2]

unit WebBrowseWithImgControl;

interface

uses
 Windows, Messages, SysUtils, Classes, Controls, OleCtrls, SHDocVw,activex;

type
 TWebBrowseWithImgControl = class(TWebBrowser, IDispatch)
 private
   FDisplayImades: Boolean;
   { Private declarations }
 protected
   function IDispatch.Invoke = Invoke;
   function Invoke(DispID: Integer; const IID: TGUID; LocaleID: Integer;
     Flags: Word; var Params; VarResult, ExcepInfo, ArgErr: Pointer): HResult;
     stdcall;
   { Protected declarations }
 public
   constructor Create(AOwner: TComponent); override;
   { Public declarations }
 published
   property DisplayImages: boolean read FDisplayImades write FDisplayImades default true;
   { Published declarations }
 end;

procedure Register;

implementation

procedure Register;
begin
 RegisterComponents("Internet", [TWebBrowseWithImgControl]);
end;

{ TWebBrowseWithImgControl }

constructor TWebBrowseWithImgControl.Create(AOwner: TComponent);
begin
 inherited;
 FDisplayImades := true;
end;

function TWebBrowseWithImgControl.Invoke(DispID: Integer; const IID: TGUID;
 LocaleID: Integer; Flags: Word; var Params; VarResult, ExcepInfo,
 ArgErr: Pointer): HResult;
const
 DISPID_AMBIENT_DLCONTROL = -5512;
 DLCTL_DLIMAGES = $00000010;

begin
if (Flags and DISPATCH_PROPERTYGET <> 0) and (VarResult <> nil) then
 begin
   Result := S_OK;
   case DispID of DISPID_AMBIENT_DLCONTROL:
   if FDisplayImades then
     PVariant(VarResult)^ := Integer(DLCTL_DLIMAGES) else
     PVariant(VarResult)^ := Integer(not DLCTL_DLIMAGES);
   else
     Result := DISP_E_MEMBERNOTFOUND;
   end;
 end else
   Result := DISP_E_MEMBERNOTFOUND;
end;

end.


примерно так..


 
VID ©   (2004-08-07 13:40) [3]

юзаем TEmbeddedWB



Страницы: 1 вся ветка

Текущий архив: 2004.10.17;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.046 c
1-1096347348
vasili
2004-09-28 08:55
2004.10.17
Нид Хелп с компонентом ТEdit


1-1096863829
Fedia
2004-10-04 08:23
2004.10.17
Вставка формулы суммы в Excel


1-1096378968
Lord_Prizrak
2004-09-28 17:42
2004.10.17
Плагины.


14-1096293082
DiamondShark
2004-09-27 17:51
2004.10.17
Беглый взгляд на первую страницу.


1-1096517611
Васёк
2004-09-30 08:13
2004.10.17
Рисование по текстуре