Einzelnen Beitrag anzeigen

Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#13

AW: Nach CopyMemory werden Daten nicht übernommen

  Alt 6. Jan 2014, 01:01
Du schreibst den Header ja auch nirgendwo in das Array rein Probiers mal so:
Delphi-Quellcode:
var
  BitmapInfo: TBitmapInfoHeader;
  Data: Pointer;
{ ... }
SafeArrayAccessData(PbitmapInfoArr, Data);
CopyMemory(Data, @BitmapInfo, SizeOf(BitmapInfo));
SafeArrayUnaccessData(PbitmapInfoArr);
Die SafeArrayAccessData liefert dir als Output Parameter einen komplett neuen Pointer. Du weißt zwar vor dem Aufruf BitmapInfo := @BitmapInfoHeader zu, aber nach dem Aufruf von SafeArrayAccessData, wurde der Zeiger bereits wieder überschrieben.
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat