Moin,
Ich habe aus einer C#
DLL eine TLB erstellt und diese als registriert (
com-visible, für
com-interop), dann die TLB in Delphi hinzugefügt und nun versuche ich dort den Constructor aufzurufen:
Delphi-Quellcode:
var
prozent: TDecimal;
ust19: TaxRate;
begin
CoInitialize(self);
ust19 := ust19.Create(self);
Die TLB:
Delphi-Quellcode:
// *********************************************************************//
// Die Klasse CoTaxRate stellt die Methoden Create und CreateRemote zur
// Verfügung, um Instanzen des Standard-Interface _TaxRate, dargestellt
// von CoClass TaxRate, zu erzeugen. Diese Funktionen können
// von einem Client verwendet werden, der die CoClasses automatisieren
// will, die von dieser Typbibliothek dargestellt werden.
// *********************************************************************//
CoTaxRate =
class
class function Create: _TaxRate;
class function CreateRemote(
const MachineName:
string): _TaxRate;
end;
// *********************************************************************//
// OLE-Server-Proxy-Klassendeklaration
// Server-Objekt : TTaxRate
// Hilfe-String :
// Standard-Interface: _TaxRate
// Def. Intf. DISP? : No
// Ereignis-Interface:
// TypeFlags : (0)
// *********************************************************************//
TTaxRate =
class(TOleServer)
private
FIntf: _TaxRate;
function GetDefaultInterface: _TaxRate;
protected
procedure InitServerData;
override;
function Get_ToString: WideString;
function Get_type_: WideString;
procedure Set_type_(
const pRetVal: WideString);
function Get_Category: WideString;
procedure Set_Category(
const pRetVal: WideString);
function Get_Percentage: TDecimal;
procedure Set_Percentage(pRetVal: TDecimal);
public
constructor Create(AOwner: TComponent);
override;
destructor Destroy;
override;
procedure Connect;
override;
procedure ConnectTo(svrIntf: _TaxRate);
procedure Disconnect;
override;
function Equals(obj: OleVariant): WordBool;
function GetHashCode: Integer;
function GetType: _Type;
property DefaultInterface: _TaxRate
read GetDefaultInterface;
property ToString: WideString
read Get_ToString;
property type_: WideString
read Get_type_
write Set_type_;
property Category: WideString
read Get_Category
write Set_Category;
property Percentage: TDecimal
read Get_Percentage
write Set_Percentage;
published
end;
Allerdings ist das Create() ein undeklarierter Bezeichner...jemand einen Hinweis für mich?
Danke!