Ver Mensaje Individual
  #2  
Antiguo 18-10-2011
jogagua jogagua is offline
Miembro
 
Registrado: dic 2008
Posts: 14
Reputación: 0
jogagua Va por buen camino
Thumbs up

Buenas, por fin he logrado quitar los dichosos clicks...

Revisando de nuevo la sugerencia inicial de Ñuño Martínez me di cuenta que aunque el internet explorer tenga desactivados los sonidos manualmente, el componente TWebBrowser usa su propia configuración en la cual utiliza éstos sonidos, por lo que lo solucioné (de manera algo chapucera para mi gusto) modificando el registro del windows al iniciar el programa, para que no encuentre el archivo .wav del ruido de "Click", y al cerrar la aplicación lo vuelvo a colocar como estaba al principio... Aqui les dejo el codigo:

Al abrir (en el OnCreate):

Código:
var
  Reg:TRegistry;
  Values:TstringList;
  i,j:integer;
  s,s1:string;
begin
  Reg:=TRegistry.Create;
  Reg.RootKey:=HKEY_CURRENT_USER;
  if Reg.OpenKey('AppEvents\Schemes\Apps\Explorer\Navigating\.Current',false) then begin
    Values:=TStringList.Create;
    Reg.GetValueNames(Values);
    for i:=1 to Values.Count do begin
        s:=Reg.ReadString(Values[i-1]);
        if s<>'' then begin
          if s[length(s)-3]='.' then begin
            s1:='';
            for j:=1 to length(s)-4 do
              s1:=s1+s[j];
          end;
          Reg.WriteString(Values[i-1],s1);
        end;
    end;
    Values.Free;
  end;
  Reg.Free;
end;
y al cerrar(en el OnClose):

Código:
var
  Reg:TRegistry;
  Values:TstringList;
  i,j:integer;
  s:string;
begin
  Reg:=TRegistry.Create;
  Reg.RootKey:=HKEY_CURRENT_USER;
  if Reg.OpenKey('AppEvents\Schemes\Apps\Explorer\Navigating\.Current',false) then begin
    Values:=TStringList.Create;
    Reg.GetValueNames(Values);
    for i:=1 to Values.Count do begin
      s:=Reg.ReadString(Values[i-1]);
      if Trim(s)<>'' then begin
        if s[length(s)-3]<>'.' then
          s:=s+'.wav';
        Reg.WriteString(Values[i-1],s);
      end;
    end;
    Values.Free;
  end;
  Reg.Free;
Quiero mencionar que hago algunas comprobaciones innecesarias en este codigo como s<>'' pero es mas por seguridad que por otra cosa...

Bueno, Muchas gracias a los que dieron sus sugerencias... espero este tema le sirva a otras personas

PD: me quedé con la duda de si es posible quitarle el sonido a nuestra aplicacion con un control central, ya que sería interesante para otros usos (nosé si algun componente hará tal función) ó si el TWebBrowser tendrá alguna configuracion en la cual se le coloque en mute jejej Saludos
Responder Con Cita