•
•
•
•
What is DaniWeb IT Discussion Community?
You're currently browsing the Pascal and Delphi section within the Software Development category of DaniWeb, a massive community of 375,274 software developers, web developers, Internet marketers, and tech gurus who are all enthusiastic about making contacts, networking, and learning from each other. In fact, there are 2,223 IT professionals currently interacting right now! Registration is free, only takes a minute and lets you enjoy all of the interactive features of the site.
Please support our Pascal and Delphi advertiser:
Assumes the presence of Memo1 on Form1.
uses Registry; procedure TForm1.Button1Click(Sender: TObject); var reg: TRegistry; keys: TStringList; i: Integer; typename, displayname, server: string; begin memo1.Clear; reg := TRegistry.Create; try reg.rootkey := HKEY_CLASSES_ROOT; if reg.OpenKey('', False) then begin keys := TStringList.Create; try reg.GetKeyNames(keys); reg.CloseKey; {memo1.lines.addstrings(keys);} for i := 0 to keys.Count - 1 do begin if keys[i][1] = '.' then begin {this is an extension, get its typename} if reg.OpenKey(keys[i], False) then begin typename := reg.ReadString(''); reg.CloseKey; if typename <> '' then begin if reg.OpenKey(typename, False) then begin displayname := reg.ReadString(''); reg.CloseKey; end; if reg.OpenKey(typename + '\shell\open\command', False) then begin server := reg.ReadString(''); memo1.Lines.Add(Format('Extension: "%s", Typename: "%s", Displayname:"%s"' + #13#10' Server: %s', [keys[i], typename, displayname, server])); reg.CloseKey; end; end; end; end; end; finally keys.Free; end; end; finally reg.Free end; end;
Post Comment
•
•
•
•
DaniWeb Marketplace (Sponsored Links)