SecureBlackbox Lite 2020 C++ Edition

Questions / Feedback?

BeforeExtractFile Event

Marks the start of extraction of an archived file.

Syntax

ANSI (Cross Platform)
virtual int FireBeforeExtractFile(ArchiveReaderBeforeExtractFileEventParams *e);
typedef struct {
const char *Path;
int64 FileSize;
int DataSource;
char *ExtractionPath;
int Skip; int reserved; } ArchiveReaderBeforeExtractFileEventParams; Unicode (Windows) virtual INT FireBeforeExtractFile(ArchiveReaderBeforeExtractFileEventParams *e);
typedef struct {
LPCWSTR Path;
LONG64 FileSize;
INT DataSource;
LPWSTR ExtractionPath;
BOOL Skip; INT reserved; } ArchiveReaderBeforeExtractFileEventParams;
- (void)onBeforeExtractFile:(NSString*)path :(long long)fileSize :(int*)dataSource :(NSString**)extractionPath :(int*)skip;
#define EID_ARCHIVEREADER_BEFOREEXTRACTFILE 2

virtual INT SECUREBLACKBOXLITE_CALL FireBeforeExtractFile(LPSTR &lpszPath, LONG64 &lFileSize, INT &iDataSource, LPSTR &lpszExtractionPath, BOOL &bSkip);

Remarks

Subscribe to this event to be notified about the start of extraction of an archived entry. The handler of this event is a good place to tune up the destination media.

The Path parameter indicates the path to the extracted entry in the archive. The FileSize specifies the uncompressed size of the file. Set the by-reference DataSource parameter in accordance with the desired extraction media type:

fdsFile (0)The data will be saved to a file indicated by the ExtractionPath parameter. You can change the path here.
fdsStream (1)The data will be saved into a stream assigned to FileStream property.
fdsBuffer (2)The file data will be saved to a buffer and returned via the FileData property.

If saving to a stream or buffer, use AfterExtractFile to collect the extracted data from FileStream or FileData, and dispose of any objects allocated in this event handler (such as the output stream).

Use the Skip parameter to cancel extraction of this file and proceed to the next one.

Copyright (c) 2022 /n software inc. - All rights reserved.
SecureBlackbox Lite 2020 C++ Edition - Version 20.0 [Build 8166]