Moin Gemeinde,
wieder eine der fürchterlichen Anfängerfragen:
Ich möchte einige Funktionen aus einer externen Druck-
DLL nutzen. Der Compiler stolpert aber über eine fehlerhafte Einbindung (forward-Deklaration):
Wrapper (Auszug):
Delphi-Quellcode:
const
IID_IDymoAddIn: TGUID = '{09DAFAE1-8EB0-11D2-8E5D-00A02415E90F}';
type
IDymoAddIn = interface;
IDymoAddIn = interface(IDispatch)
['{09DAFAE1-8EB0-11D2-8E5D-00A02415E90F}']
function Open(const FileName: WideString): WordBool; safecall;
function Save: WordBool; safecall;
function SaveAs(const FileName: WideString): WordBool; safecall;
function Print(Copies: Integer; bShowDialog: WordBool): WordBool; safecall;
procedure Hide; safecall;
procedure Show; safecall;
procedure SysTray(State: WordBool); safecall;
procedure Quit; safecall;
function Get_FileName: WideString; safecall;
function SelectPrinter(const Printer: WideString): WordBool; safecall;
function GetDymoPrinters: WideString; safecall;
property FileName: WideString read Get_FileName;
end;
Und dann der Aufruf der externen Funktion aus der Delphi App:
Delphi-Quellcode:
pfad := 'mylabel.lwl';
opened := DymoAddIn.Open(pfad);
Da gibts dann den Fehler "E2018 Record, Objekt oder Klassentyp erforderlich".
Wie macht man das noch richtig?
Danke!