Главная » Delphi » Интернет и сети » Определить WebBrowser по умолчанию 2

Определить WebBrowser по умолчанию 2

14:15
uses
  Registry;
function StripChar(SelChar: Char; PassedStr: STRING): STRING;
var
   DelPos: Integer;
begin
     while Pos(SelChar, PassedStr) <> 0 do
     begin
          DelPos := Pos(SelChar, PassedStr);
          Delete(PassedStr, DelPos, SizeOf(SelChar));
     end;
     Result := PassedStr;
end;
 
function GetDefaultBrowser: STRING;
var
   Reg: TRegistry;
   RegKeyInfo: TRegKeyInfo;
   HtmlKey, AssocType, FullProgPath: String;
   DelPos, DelLength: Integer;
begin
   Reg := TRegistry.Create;
 
   try
      try
         HtmlKey := '.HTML';
         Reg.RootKey := HKEY_CLASSES_ROOT;
         if (Reg.KeyExists(HtmlKey)) then
         begin
              if Reg.OpenKey(HtmlKey, FALSE) then
              begin
                   AssocType := Reg.ReadString('');
                   Reg.CloseKey;
                   AssocType := AssocType + '\SHELL\OPEN\COMMAND';
                   if Reg.OpenKey(AssocType, FALSE) then
                   begin
                        FullProgPath := UpperCase(Reg.ReadString(''));
                        FullProgPath:= StripChar('"', FullProgPath);
                        DelPos := Pos('EXE', FullProgPath);
                        DelLength := Length(FullProgPath) - DelPos;
                        if DelPos <> 0 then
                           Delete(FullProgPath, DelPos+3, DelLength+1);
                        Result := FullProgPath;
                        Reg.CloseKey;
                   end;
              end;
         end
         else
       Result := '   -  .';
      except
         Result := '   -  .';
      end; { try/except }
   finally
          Reg.Free;
   end; { try/finally }
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
  showmessage( GetDefaultBrowser);
end;