Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   IEnumFORMATETC exakte Deklaration? (https://www.delphipraxis.net/175085-ienumformatetc-exakte-deklaration.html)

Nintendo 29. Mai 2013 18:05

IEnumFORMATETC exakte Deklaration?
 
Hallo,

Ich möchte ein Projekt von Freepascal nach Delphi portieren und hier:

Delphi-Quellcode:
  TfpgOLEEnumFormatEtc = class(TInterfacedObject, IEnumFORMATETC)
  private
    FFormatEtcList: TfpgOLEFormatEtcList;
    FIndex: Integer;
  protected
    { IEnumFORMATETC }
// Bei diesen beiden Funktionen kommt der Compiler nicht weiter
    function   Next(celt: Longint; var elt:FormatEtc; pceltFetched: PLongint=nil): HResult; stdcall;
    function   Skip(celt: Longint): HResult; stdcall;
    function   Reset: HResult; stdcall;
    function   Clone(out Enum: IEnumFormatEtc): HResult; stdcall;
  public
    constructor Create(AFormatEtcList: TfpgOLEFormatEtcList);
    destructor Destroy; override;
  end;
wie im Kommentar gesagt, erhalte ich die Fehlermeldung das sich die Deklaration der beiden Funktionen []bNext[/b] und Skip von der Deklaration im Interface unterscheidet?

Ich habe unter Google unter IEnumFORMATETC delphi gesucht, auch das Wort Delphi vor den Interfacebezeichner nichts gefunden.

Wo finde ich die exakte Deklaration dieses Interfaces?

Habe die VCL Quelltexte nicht auf meinem derzeitigen Rechner.

sx2008 29. Mai 2013 19:39

AW: IEnumFORMATETC exakte Deklaration?
 
Delphi-Quellcode:
// Delphi 5 - Unit ActiveX
  IEnumFORMATETC = interface(IUnknown)
    ['{00000103-0000-0000-C000-000000000046}']
    function Next(celt: Longint; out elt;
      pceltFetched: PLongint): HResult; stdcall;
    function Skip(celt: Longint): HResult; stdcall;
    function Reset: HResult; stdcall;
    function Clone(out Enum: IEnumFormatEtc): HResult; stdcall;
  end;
Die Deklaration kann in einer anderen Delphi Version leicht unterschiedlich aussehen.
Bitte deine Delphi Version in deinem Profil hinterlegen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:01 Uhr.

Powered by vBulletin® Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf