Раздражающий звук щелчка в TWebbrowser - PullRequest
5 голосов
/ 05 марта 2009

Я использую компонент TWebbrowser в своем приложении Delphi, содержимое которого загружаю программно:

(aWebBrowser.Document as IPersistStreamInit).
                               Load(TStreamAdapter.Create(aMemoryStream))

При каждой загрузке компонент производит раздражающий звук щелчка. Это можно отключить?
ТИА

Ответы [ 4 ]

18 голосов
/ 05 марта 2009

Посмотрите на процедуру CoInternetSetFeatureEnabled в URLMON.DLL, как описано здесь . Включение функции FEATURE_DISABLE_NAVIGATION_SOUNDS для вашего приложения будет делать то, что вам нужно.

7 голосов
/ 05 марта 2009

Это настройка Windows . Я не уверен, что ваше приложение должно изменить этот параметр.

2 голосов
/ 05 марта 2009

ОК, вот что я попробовал:

procedure TForm1.FormCreate(Sender: TObject);
begin
  Application.OnActivate := AppActivate;
  Application.OnDeactivate := AppDeactivate;
end;

procedure TForm1.AppActivate(Sender: TObject);
begin
  with TRegistry.Create do
  try
    RootKey := HKEY_CURRENT_USER;
    OpenKey('AppEvents\Schemes\Apps\Explorer\Navigating\.Current', False);
    if ReadString('') <> '' then
      RememberSoundFile := ReadString('');
    WriteString('', '');
  finally
    Free;
  end;
end;

procedure TForm1.AppDeactivate(Sender: TObject);
begin
  with TRegistry.Create do
  try
    RootKey := HKEY_CURRENT_USER;
    OpenKey('AppEvents\Schemes\Apps\Explorer\Navigating\.Current', False);
    WriteString('', RememberSoundFile);
  finally
    Free;
  end;
end;

Это плохо, но работает. :-) Хотя я в основном согласен с Davy, это решение, по крайней мере, имеет то преимущество, что другие приложения не будут затронуты.
Я могу добавить его в качестве пользовательской опции, чтобы отключить щелчок, но лично я действительно хочу, чтобы он исчез!

1 голос
/ 05 марта 2009

Есть ли вероятность, что это стандартный звук Windows «Start Navigation» (см. «Панель управления» - «Звуки и аудиоустройства»)?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...