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

Вниз

Подавление сообщений   Найти похожие ветки 

 
SDF   (2004-04-30 09:05) [0]

Проблема такова.
Общаюсь с сервером через TWebBrowser. При определенном раскладе скрипты генерят разного рода сообщения.
Вопрос. Как подавить их появление.
Заранее благодарен


 
able ©   (2004-04-30 12:32) [1]

См. ф-ции TWebBrowser?


 
SDF   (2004-05-02 11:37) [2]

Конкретнее плз. Событие Открытия дочернего окна не помогает.


 
easy ©   (2004-05-02 17:46) [3]

If you are using TWebBrowser, you need to override the invoke method for
TOleControl. Check the code Below:

interface

TOleControl2 = class(TOleControl, IDispatch)
 private
   FScript : boolean;
 protected
   function IDispatch.Invoke = Invoke;
   function Invoke(DispID: Integer; const IID: TGUID; LocaleID: Integer;
Flags: Word; var Params; VarResult, ExcepInfo, ArgErr: Pointer): HResult;
stdcall;
 public
   constructor Create(AOwner: TComponent); override;
 published
   property ScriptEnabled : boolean read FScript write FScript;
 end;

implementation

{ TOleControl2 }

constructor TOleControl2.Create(AOwner: TComponent);
begin
 inherited;
 FScript := true;
end;

function TOleControl2.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;
 DLCTL_NO_SCRIPTS = $00000080;
 DLCTL_NO_JAVA = $00000100;
 DLCTL_NO_RUNACTIVEXCTLS = $00000200;
 DLCTL_NO_DLACTIVEXCTLS = $00000400;
 DLCTL_DOWNLOADONLY = $00000800;

var
 F: TFont;
begin
 if (Flags and DISPATCH_PROPERTYGET <> 0) and (VarResult <> nil) then
 begin
   Result := S_OK;
   case DispID of
     DISPID_AMBIENT_BACKCOLOR:
       PVariant(VarResult)^ := Color;

     DISPID_AMBIENT_DISPLAYNAME:
       PVariant(VarResult)^ := StringToVarOleStr(Name);

     DISPID_AMBIENT_FONT:
     begin
       if (Parent <> nil) and ParentFont then
         F := TOleControlHack(Parent).Font
       else
         F := Font;
       PVariant(VarResult)^ := FontToOleFont(F);
     end;

     DISPID_AMBIENT_FORECOLOR:
       PVariant(VarResult)^ := Font.Color;

     DISPID_AMBIENT_LOCALEID:
       PVariant(VarResult)^ := Integer(GetUserDefaultLCID);

     DISPID_AMBIENT_MESSAGEREFLECT:
       PVariant(VarResult)^ := True;

     DISPID_AMBIENT_USERMODE:
       PVariant(VarResult)^ := not (csDesigning in ComponentState);

     DISPID_AMBIENT_UIDEAD:
       PVariant(VarResult)^ := csDesigning in ComponentState;

     DISPID_AMBIENT_SHOWGRABHANDLES:
       PVariant(VarResult)^ := False;

     DISPID_AMBIENT_SHOWHATCHING:
       PVariant(VarResult)^ := False;

     DISPID_AMBIENT_SUPPORTSMNEMONICS:
       PVariant(VarResult)^ := True;

     DISPID_AMBIENT_DLCONTROL:
       if not(FScript) then
         begin
           PVariant(VarResult)^ := Integer(DLCTL_NO_JAVA or
DLCTL_NO_SCRIPTS or DLCTL_DLIMAGES);
           //PVariant(VarResult)^ := Integer(DLCTL_DOWNLOADONLY or
DLCTL_NO_JAVA or DLCTL_NO_SCRIPTS or DLCTL_NO_DLACTIVEXCTLS or
DLCTL_NO_RUNACTIVEXCTLS or 0);
         end;
     DISPID_AMBIENT_AUTOCLIP:
       PVariant(VarResult)^ := True;
   else
     Result := DISP_E_MEMBERNOTFOUND;
   end;
 end else
   Result := DISP_E_MEMBERNOTFOUND;
end;


Hope this helps

Fitim



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

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

Наверх




Память: 0.48 MB
Время: 0.02 c
1-1086075417
V-Isa
2004-06-01 11:36
2004.06.20
Ребята, подскажите с чего начать.


1-1086757998
artem_123
2004-06-09 09:13
2004.06.20
Как создать submenu в mainmenu программным путем


14-1086337549
Baks
2004-06-04 12:25
2004.06.20
Таймер


4-1084421624
Vitt_lay
2004-05-13 08:13
2004.06.20
Синхронные прием-передача на LPT


1-1086669113
Анатолий
2004-06-08 08:31
2004.06.20
BDE снесли без унинстала, как его удалить из реестра?