Einzelnen Beitrag anzeigen

hanspeter

Registriert seit: 26. Jul 2003
Ort: Leipzig
1.350 Beiträge
 
Delphi XE2 Professional
 
#1

D2010 wo ist die CoClass geblieben

  Alt 22. Dez 2009, 14:58
Hallo,
eigentlich wollte ich nur schnell ein Plugin aufsetzen. In D2010 scheint sich aber der Com Experte komplett geändert zu haben.

Früher fügte ich in der TLB einfach eine CoClass zu und Delphi generierte den notwendigen Code.

Also etwa so:

Delphi-Quellcode:
/ ITest = interface(IUnknown)
    ['{F7417599-6939-436F-907A-2E1E40B192A0}']
    function Add(a: SYSINT; b: SYSINT): SYSINT; stdcall;
    function ShowParent(ART: Byte; Parent: Integer; const Titel: WideString): HResult; stdcall;
  end;

/ *********************************************************************//
// Die Klasse CoTest stellt die Methoden Create und CreateRemote zur
// Verfügung, um Instanzen des Standard-Interface ITest, dargestellt
// von CoClass Test, zu erzeugen. Diese Funktionen können
// von einem Client verwendet werden, der die CoClasses automatisieren
// will, die von dieser Typbibliothek dargestellt werden.
// *********************************************************************//
  CoTest = class
    class function Create: ITest;
    class function CreateRemote(const MachineName: string): ITest;
  end;

implementation

uses ComObj;

class function CoTest.Create: ITest;
begin
  Result := CreateComObject(CLASS_Test) as ITest;
end;

class function CoTest.CreateRemote(const MachineName: string): ITest;
begin
  Result := CreateRemoteComObject(MachineName, CLASS_Test) as ITest;
end;
(Mit Delphi 7)

Neu wird lediglich die GUI erzeugt

 CLASS_CoAutvomPath: TGUID = '{BD045FFE-B15E-4F05-89DC-D9BEAE9ED8E6}'; Übersehe ich jetzt irgenwas oder ist in D2010 der neue Experte nicht mehr richtig funktionsfähig?

Für einen Tip dankbar.


Gruß
Peter
  Mit Zitat antworten Zitat