Mega Code Archive

 
Categories / Delphi / System
 

Locating the servers available in the registry

Title: Locating the servers available in the registry Question: How do I locate the application servers available in the registry of the machine? Answer: Read the registry key under HKEY_CLASSES_ROOT\CLSID\* looking for keys that have a subkey "Borland DataBroker". These entries are application servers. Here's an example that loads application server names to a Listbox. procedure TForm1.FormCreate(Sender: TObject); var uses Registry; I: integer; TempList: TStringList; begin TempList := TStringList.Create; try with TRegistry.Create do try RootKey := HKEY_CLASSES_ROOT; if OpenKey('CLSID', False) then GetKeyNames(TempList); CloseKey; for I := 1 to TempList.Count - 1 do if KeyExists('CLSID\' + TempList[I] + '\Borland DataBroker') then begin if OpenKey('CLSID\' + TempList[I] + '\ProgID', False) then begin Listbox1.Items.Add(ReadString('')); CloseKey; end; end; finally Free; end; finally TempList.Free; end; end;