Eigentlich nicht,
ich hab versucht die Headers 1:1 zu übersetzen.
Bei den JSB sind einige Funktionen denen lt.
MSDN Arrays übergeben werden (eigentlich Zeiger auf das erste Element) als einfache Typen
deklariert.
In FPC wäre die Routine so möglich:
Delphi-Quellcode:
{ part of WinCodec.h, but cross reference problem }
IWICImageEncoder = interface(IUnknown)
['{04C75BF8-3CE1-473B-ACC5-3CC4F5E94999}']
function WriteFrame(pImage: ID2D1Image; pFrameEncode: IWICBitmapFrameEncode;
const pImageParameters: TWICImageParameters): HResult; stdcall;
function WriteFrameThumbnail(pImage: ID2D1Image; pFrameEncode: IWICBitmapFrameEncode;
const pImageParameters: TWICImageParameters): HResult; stdcall;
function WriteThumbnail(pImage: ID2D1Image; pEncoder: IWICBitmapEncoder; const pImageParameters: TWICImageParameters): HResult; stdcall;
end;
da FPC davon ausgeht das bei StdCall CONST Parameter by Referenz übergeben werden.
Auch wenn speziell die Übergabe von Arrays als Pointer bei FPC irgendwie "anders" ist sollte obiges bei Delphi auch gleich funktionieren?