Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.015 Beiträge
 
Delphi 12 Athens
 
#28

AW: Array of Integer und crash

  Alt 19. Mär 2017, 22:09
Sorry ich weis jetzt nicht was du meinst wie soll ich dem Record einen Speicher zuweisen.
Das kannst du so gar nicht. Deswegen wird in den Beispielen auch immer ein dynamischer Pointer PPropertyIem benutzt, der entsprechend PropSize alloziert wird.

Delphi-Quellcode:
   PropSize: UINT;
   PropItem: PPropertyItem; // dynamischer Pointer auf Record


  if GDIP_GetPropertyItemSize(InGifImage, PropertyTagFrameDelay, PropSize) = S_OK then
  begin
    GetMem(PropItem, PropSize); // Record in passender Größe bereitstellen
    // Daten auslesen
    if GetPropertyItem(InGifImage, PropertyTagFrameDelay, PropSize, PropItem^) = S_OK then // Alternativ den Typ des Parameters in PPropertyItem ändern
    ...
    FreeMem(PropItem); // Delphi merkt sich die Size intern
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat