Zitat:
Ggf. sind aber deine Header nicht richtig übersetzt?
Denke mal nicht.
Der einzige unterschied ist ich verwende LONG_PTR anstelle von Pointer für die Images.
Meine..
Delphi-Quellcode:
GdipImageGetFrameCount: function(Image: LONG_PTR; dimensionID: PGUID; var count: UINT): GPSTATUS; stdcall;
GdipGetPropertyItem: function(Image: LONG_PTR; propId: PROPID; propSize: UINT; var buffer: PPROPERTYITEM): GPSTATUS; stdcall;
GdipGetPropertyItemSize: function(Image: LONG_PTR; propId: PROPID; var size: UINT): GPSTATUS; stdcall;
GdipGetPropertyCount: function(Image: LONG_PTR; var numOfProperty: UINT): GPSTATUS; stdcall;
GdipGetPropertyIdList: function(Image: LONG_PTR; numOfProperty: UINT; var list: PPROPID): GPSTATUS; stdcall;
Winapi.GDIPAPI
Delphi-Quellcode:
function GdipImageGetFrameCount(image: GPIMAGE; dimensionID: PGUID;
var count: UINT): GPSTATUS; stdcall;
{$EXTERNALSYM GdipImageGetFrameCount}
function GdipGetPropertyItem(image: GPIMAGE; propId: PROPID; propSize: UINT;
buffer: PPROPERTYITEM): GPSTATUS; stdcall;
{$EXTERNALSYM GdipGetPropertyItem}
function GdipGetPropertyItemSize(image: GPIMAGE; propId: PROPID;
var size: UINT): GPSTATUS; stdcall;
{$EXTERNALSYM GdipGetPropertyItemSize}
function GdipGetPropertyCount(image: GPIMAGE;
var numOfProperty: UINT): GPSTATUS; stdcall;
{$EXTERNALSYM GdipGetPropertyCount}
function GdipGetPropertyIdList(image: GPIMAGE; numOfProperty: UINT;
list: PPROPID): GPSTATUS; stdcall;
{$EXTERNALSYM GdipGetPropertyIdList}
hmmm.. sehe gerade hier ist kein var.
var buffer: PPROPERTYITEM bei GdipGetPropertyItem (
Winapi.GDIPAPI) muss das mal testen.
Zitat:
Da ist ein Fehler in der
Winapi.GDIPAPI
der Buffer
MUSS über var zurückgegeben werden.
Soviel zu
Winapi.GDIPAPI
Was gibt er also zurück bei der
Winapi.GDIPAPI bei der Funktion GdipGetPropertyItem?
NICHTS!
Hier ist auch ein Fehler GdipGetPropertyIdList keine Rückgabe, sollte eigentlich den Zeiger auf das Array der Liste zurückgeben.
Sorry aber mit so was kann man nicht arbeiten.
gruss