Platforms to show: All Mac Windows Linux Cross-Platform
ArchiveReadDiskMBS class
Super class: ArchiveReaderMBS
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
class | Archive | MBS Compression Plugin | 19.0 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
Subclass of the ArchiveReaderMBS class.
- 2 events
- event GroupLookup(ID as Int64) as String
- event UserLookup(ID as Int64) as String
- property BehaviorFlags as Integer
- 16 methods
- method CanDescend as Boolean
- method Constructor
- method CurrentFileSystem as Integer
- method CurrentFileSystemIsRemote as Integer
- method CurrentFileSystemIsSynthetic as Integer
- method Descend
- method Destructor
- method GroupName(ID as Int64) as String
- method Open(Folder as FolderItem) as Boolean
- method Open(Path as String) as Boolean
- method SetAccessTimeRestored
- method SetStandardLookup
- method SetSymlinkHybrid
- method SetSymlinkLogical
- method SetSymlinkPhysical
- method UserName(ID as Int64) as String
- 7 constants
Behavior Flags
Constant | Value | Description |
---|---|---|
kBehaviorRestoreAccessTime | 1 |
Request that the access time of the entry visited by traversal be restored. This is the same as SetAccessTimeRestored. |
kBehaviorRestoreHonorNoDump | 2 |
Default: Do not skip an entry which has nodump flags. |
kBehaviorRestoreMacCopyFile | 4 |
Default: Skip a mac resource fork file whose prefix is "._" because of using copyfile. |
kBehaviorRestoreNoACL | 32 |
Default: ACLs are read from disk. |
kBehaviorRestoreNoFFlags | 64 |
Default: File flags are read from disk. |
kBehaviorRestoreNoTraverseMounts | 8 |
Default: Traverse mount points. |
kBehaviorRestoreNoXAttr | 16 |
Default: Xattrs are read from disk. |
Super class ArchiveReaderMBS
- event ExtractProgress(entry as ArchiveEntryMBS)
- 4 properties
- property FormatCapabilities as Integer
- property HasEncryptedEntries as Integer
- property HeaderPosition as Int64
- property ReadDataBlockSupported as Boolean
- 61 methods
- method AddPassphrase(passphrase as string)
- method AppendFilter(Filter as Integer)
- method AppendFilterProgram(Program as String)
- method Close
- method Constructor
- method Destructor
- method Extract(Entry as ArchiveEntryMBS, DestArchive as ArchiverMBS)
- method Extract(Entry as ArchiveEntryMBS, flags as Integer = &h123F7)
- method NextHeader(entry as ArchiveEntryMBS = nil) as ArchiveEntryMBS
- method OpenData(Data as String) as Boolean
- method OpenFile(File as FolderItem, BlockSize as Integer = 10240) as Boolean
- method OpenFile(Files() as FolderItem, BlockSize as Integer = 10240) as Boolean
- method OpenPath(Path as String, BlockSize as Integer = 10240) as Boolean
- method OpenPath(Paths() as String, BlockSize as Integer = 10240) as Boolean
- method ReadDataBlockMemory(byref offset as Int64) as MemoryBlock
- method ReadDataBlockString(byref offset as Int64) as String
- method ReadDataMemory(ByteCount as Integer) as MemoryBlock
- method ReadDataString(ByteCount as Integer) as String
- method Seek(Position as Int64, Mode as Integer = 0) as Int64
- method SetExtractSkipFile(DeviceID as Int64, FileNo as Int64)
- method SetFilterOption(Module as String, Option as String, Value as String)
- method SetFormat(Format as Integer)
- method SetFormatOption(Module as String, Option as String, Value as String)
- method SetOption(Module as String, Option as String, Value as String)
- method SetOptions(Options as String)
- method Skip
- method SupportFilterAll
- method SupportFilterBZip2
- method SupportFilterCompress
- method SupportFilterGRZip
- method SupportFilterGZip
- method SupportFilterLRZip
- method SupportFilterLZip
- method SupportFilterLzma
- method SupportFilterLzop
- method SupportFilterNone
- method SupportFilterProgram(command as string)
- method SupportFilterRpm
- method SupportFilterUU
- method SupportFilterXz
- method SupportFormat7zip
- method SupportFormatAll
- method SupportFormatAr
- method SupportFormatByCode(FilterCode as Integer)
- method SupportFormatCab
- method SupportFormatCpio
- method SupportFormatEmpty
- method SupportFormatGnutar
- method SupportFormatIso9660
- method SupportFormatLha
- method SupportFormatLZ4
- method SupportFormatMTree
- method SupportFormatRar
- method SupportFormatRar5
- method SupportFormatRaw
- method SupportFormatTar
- method SupportFormatWArc
- method SupportFormatXar
- method SupportFormatZip
- method SupportFormatZipSeekable
- method SupportFormatZipStreamable
- 26 constants
Encryption Status constants.
Constant | Value | Description |
---|---|---|
kEncryptionDontKnow | -1 |
If the reader for some other reason (e.g. not enough bytes read) cannot say if there are encrypted entries, kEncryptionDontKnow is returned. |
kEncryptionUnsupported | -2 |
In case the archive does not support encryption detection at all kEncryptionUnsupported is returned. |
Extract Flags
Constant | Value | Description |
---|---|---|
kExtractACL | &h20 |
Default: Do not restore ACLs. |
kExtractClearNoChangeFFlags | &h20000 |
Default: Do not clear no-change flags when unlinking object. |
kExtractFileFlags | &h40 |
Default: Do not restore fflags. |
kExtractHFSCompressionForced | &h8000 |
Default: Do not use HFS+ compression if it was not compressed. This has no effect except on Mac OS v10.6 or later. |
kExtractMacMetadata | &h2000 |
Default: Do not restore Mac extended metadata. This has no effect except on Mac OS. |
kExtractNoAutoDir | &h400 |
Default: Create parent directories as needed. |
kExtractNoHFSCompression | &h4000 |
Default: Use HFS+ compression if it was compressed. This has no effect except on Mac OS v10.6 or later. |
kExtractNoOverwrite | 8 |
Default: Replace existing files. |
kExtractNoOverwriteNewer | &h800 |
Default: Overwrite files, even if one on disk is newer. |
kExtractOwner | 1 |
Default: Do not try to set owner/group. |
kExtractPermission | 2 |
Default: Do obey umask, do not restore SUID/SGID/SVTX bits. |
kExtractSecureNoAbsolutePath | &h10000 |
Default: Do not reject entries with absolute paths |
kExtractSecureNoDotDot | &h200 |
Default: Do not reject entries with '..' as path elements. |
kExtractSecureSymLinks | &h100 |
Default: Do not try to guard against extracts redirected by symlinks. Note: With kExtractUnlink, will remove any intermediate symlink. |
kExtractSparse | &h1000 |
Detect blocks of 0 and write holes instead. |
kExtractTime | 4 |
Default: Do not restore mtime/atime. |
kExtractUnlink | &h10 |
Default: Try create first, unlink only if create fails with EEXIST. |
kExtractXAttr | &h80 |
Default: Do not restore xattrs. |
Encryption Capabilities
Constant | Value | Description |
---|---|---|
kFormatCapabilitiesEncryptData | 1 |
Reader can detect encrypted data. |
kFormatCapabilitiesEncryptMetaData | 2 |
Reader can detect encryptable metadata (pathname, mtime, etc.). |
kFormatCapabilitiesNone | 0 |
Current format supports no encryption. |
Seek Modes
Constant | Value | Description |
---|---|---|
kSeekCur | 1 |
Seek relative to current position. |
kSeekEnd | 2 |
Seek relative to end of file. |
kSeekSet | 0 |
Seek relative to begin of file. |
Super class ArchiverMBS
- event Passphrase(byref password as String) as Boolean
- 14 properties
- property Compression as Integer
- property CompressionName as String
- property ErrNo as Integer
- property ErrorString as String
- property FileCount as Integer
- property FilterCount as Integer
- property Format as Integer
- property FormatName as String
- property Handle as Integer
- property Lasterror as Integer
- property Open as Boolean
- property PositionCompressed as Int64
- property PositionUncompressed as Int64
- property Yield as Boolean
- 8 shared properties
- shared property BZLibVersion as String
- shared property LibVersion as Integer
- shared property LibVersionDetails as String
- shared property LibVersionString as String
- shared property LZ4Version as String
- shared property LzmaVersion as String
- shared property ZLibVersion as String
- shared property ZStdVersion as String
- 7 methods
- method ClearError
- method Constructor Private
- method CopyError(source as ArchiverMBS)
- method Destructor
- method FilterBytes(FilterIndex as Integer) as Int64
- method FilterCode(FilterIndex as Integer) as Integer
- method FilterName(FilterIndex as Integer) as String
- 5 shared methods
- shared method LoadIconvLibrary(path as String, byref Error as String) as boolean
- shared method NewReader as ArchiveReaderMBS
- shared method NewWriter as ArchiveWriterMBS
- shared method SetCurrentWorkingDirectory(path as folderitem) as boolean
- shared method SetCurrentWorkingDirectory(path as String) as boolean
- 52 constants
This class has no sub classes.
Some examples using this class:
Blog Entries
Release notes
- Version 20.3
- Fixed issue with ArchiveReadDiskMBS class on Windows in case path ends with backslash.
- Version 19.0
- Added ArchiveReadDiskMBS and ArchiveWriteDiskMBS classes to adding files to archives.
The items on this page are in the following plugins: MBS Compression Plugin.
ArchiveEntryMBS - ArchiveReaderMBS