Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Library: Windows API / MS.NET Framework API (https://www.delphipraxis.net/20-library-windows-api-ms-net-framework-api/)
-   -   Delphi Buttons in der IE-Toolbar einfügen (https://www.delphipraxis.net/1043-buttons-der-ie-toolbar-einfuegen.html)

MathiasSimmack 11. Okt 2002 07:30


Buttons in der IE-Toolbar einfügen
 
Die Funktion habe ich gerade in AUQ.de als FAQ-Eintrag vorgeschlagen. Sie stammt ursprünglich aus dem SwissDelphiCenter, lässt sich aber IMHO jetzt universeller einsetzen:
Code:
[b]uses[/b]
  Registry, ComObj;

[b]procedure[/b] CreateExplorerButton([b]const[/b] szAppname, szButtonText,
  szMenuText, szStatusbarText: [b]string[/b]; [b]const[/b] IsVisible: boolean;
  [b]const[/b] szHotIcon, szIcon: [b]string[/b]);
[b]const[/b]
  IEExtensions = 'Software\Microsoft\Internet Explorer\Extensions\';
  DefVisible : [b]array[/b][boolean][b]of[/b] [b]string[/b] = ('No','Yes');
[b]var[/b]
  reg : TRegistry;
[b]begin[/b]
  reg := TRegistry.Create;
  [b]with[/b] reg [b]do[/b]
    [b]try[/b]
      RootKey := HKEY_LOCAL_MACHINE;
      [b]if[/b](OpenKey(IEExtensions + CreateClassId,true)) [b]then[/b]
        [b]try[/b]
          WriteString('ButtonText',szButtonText);
          WriteString('MenuText',szMenuText);
          WriteString('MenuStatusBar',szStatusbarText);
          WriteString('CLSID','{1FBA04EE-3024-11d2-8F1F-0000F87ABD16}');
          WriteString('Default Visible',DefVisible[IsVisible]);
          WriteString('Exec','"' + szAppname + '"');
          WriteString('HotIcon',szHoticon);
          WriteString('Icon',szIcon);
        [b]finally[/b]
          CloseKey;
        [b]end[/b];
    [b]finally[/b]
      Free;
    [b]end[/b];
[b]end[/b];
Habt ihr Verbesserungsvorschläge, oder könnte man das so in "unsere" Code-Library übernehmen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:18 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz