Click or drag to resize

IArchiveExtractorExtractSolidBlockItems Method

Extracts archive items from a solid block compressed archive (IsSolid is true).

Namespace: OpenDiscoverSDK.Interfaces.Extractors
Assembly: OpenDiscoverSDK.Interfaces (in OpenDiscoverSDK.Interfaces.dll) Version: 2025.4.4.0 (2025.4.4)
Syntax
C#
ContentResult ExtractSolidBlockItems(
	GetItemStreamCallback itemGetStreamCallback,
	ItemExtractionFinishedCallback itemFinishedCallback,
	string password = null
)

Parameters

itemGetStreamCallback  GetItemStreamCallback
Callback delegate called for each item in archive in order to supply a stream to be used for the decompressed archive child item's data.
itemFinishedCallback  ItemExtractionFinishedCallback
Callback delegate called for each item when extraction to supplied stream is finished.
password  String  (Optional)

Optional password (default is null). Solid compressed archive items have the same password if encrypted because they are compressed and encrypted together into solid blocks.

Check the returned ContentResult, if WrongPassword is the value, then user can make subsequent calls to this method using a different password until Ok is returned or there are no more passwords to try.

Return Value

ContentResult
A ContentResult enumerated result. If the returned value is WrongPassword then the solid block compressed archive items require a decryption password. User can make subsequent calls to this method using a password until Ok is returned or there are no more passwords to try.
Remarks

Solid archives (IsSolid is true) have all items compressed into 1 or more internal blocks. By compressing more files together in blocks, greater compression ratios can be achieved.

This method is the most efficient way (fastest) to extract all archive items from solid block archives.

This method will throw an exception if called for a non-solid archive, i.e., IsSolid is false.

See Also