// Create or load a stream of data to upload.
var LStream := TMemoryStream.Create;
var S3 := TS3Client.Create;
var LUploader := TS3StreamUploader.Create(
S3)
as IS3StreamUploader;
LUploader.Upload(
LStream,
'a-destination-bucket',
'a-destination-key'
False,
procedure(
const AUploadId:
string; APartNumber: Integer; APartSize, APartWriteCount, AOverallSize, AOverallWriteCount: Int64;
var AAbort: Boolean)
begin
// Update your user interface with current progress.
end
);