Neues Thema starten

Inkrementeller TAR-Export

Hallo zusammen,


ich hänge aktuell noch beim inkrementellen TAR-Export. Der "normale" Full-Export (worm_export_tar) klappt ohne Probleme, allerdings nicht der inkrementelle (worm_export_tar_incremental).


Definiert habe ich die Funktion und den Callback wie folgt: 

  

TWormExportTarIncrementalCallback = function(chunk: PBytes; chunkLength: Cardinal; processedBlocks: DWORD; totalBlocks: DWORD; callbackData: PBytes): Integer; stdcall;

TWorm_export_tar_incremental = function(context: Pointer; lastState: PAnsiChar; lastStateSize: Integer; newState: PByteArray; newStateSize: Integer; var firstSignatureCounter: UInt64; var lastSignatureCounter: UInt64; callback: TWormExportTarIncrementalCallback; callbackData: Pointer): Integer; stdcall;

 Der Aufruf ist dann wie folgt: 

 

var
  data: TBytes;
  fs: TFileStream;
  oldState: PAnsiChar;
  newState: PByteArray;
  firstSignatureCounter: UInt64;
  lastSignatureCounter: UInt64;
begin
  SetLength(data, 0);
  GetMem(newState, 16);

  oldState := '';

  Result := worm_export_tar_incremental(context, oldState, Length(oldState), newState, 16,
    firstSignatureCounter, lastSignatureCounter, exportTarIncrementalCallback, @data);

 

Als Result kriege ich immer "WORM_ERROR_INVALID_PARAMETER". 

Hat jemand eine Idee was ich machen muss, damit das funktioniert?


Danke für die Hilfe,

Dennis Glittenberg

Anmelden oder Registrieren um einen Kommentar zu veröffentlichen