Einzelnen Beitrag anzeigen

Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#7

Re: Wie ermittelt man welche Komponenten in einem Package si

  Alt 22. Apr 2005, 00:10
Korrekt, und mit System.EnumModules() kannst du über die geladenen Packages iterieren.

Delphi-Quellcode:
uses TypInfo, HagEnumInfo;

function TForm1.DoTypeInfo(Info: PTypeInfo): Boolean; register;
begin
  Result := False;
  if Info.Kind = tkClass then
    Memo1.Lines.Add(GetModuleName(FindHInstance(Info)) + ', ' + Info.Name);
end;

procedure TForm1.Button1Click(Sender: TObject);

  function MyEnumModule(Instance: Integer; Data: Pointer): Boolean;
  begin
    Result := not EnumTypeInfo(Instance, @MyEnumTypeInfo, Data);
  end;

begin
  Memo1.BeginUpdate;
  try
    Memo1.Clear;
    EnumModules(@MyEnumModule, Self);
  finally
    Memo1.EndUpdate;
  end;
end;

Gruß Hagen
  Mit Zitat antworten Zitat