Microsoft.Deployment.Compression.Cab Disposes of resources allocated by the cabinet engine. If true, the method has been called directly or indirectly by a user's code, so managed and unmanaged resources will be disposed. If false, the method has been called by the runtime from inside the finalizer, and only unmanaged resources will be disposed. Disposes of resources allocated by the cabinet engine. If true, the method has been called directly or indirectly by a user's code, so managed and unmanaged resources will be disposed. If false, the method has been called by the runtime from inside the finalizer, and only unmanaged resources will be disposed. Engine capable of packing and unpacking archives in the cabinet format. Creates a new instance of the cabinet engine. Disposes of resources allocated by the cabinet engine. If true, the method has been called directly or indirectly by a user's code, so managed and unmanaged resources will be disposed. If false, the method has been called by the runtime from inside the finalizer, and only unmanaged resources will be disposed. Creates a cabinet or chain of cabinets. A context interface to handle opening and closing of cabinet and file streams. The paths of the files in the archive (not external file paths). The maximum number of bytes for one cabinet before the contents are chained to the next cabinet, or zero for unlimited cabinet size. The cabinet could not be created. The stream context implementation may provide a mapping from the file paths within the cabinet to the external file paths. Smaller folder sizes can make it more efficient to extract individual files out of large cabinet packages. Checks whether a Stream begins with a header that indicates it is a valid cabinet file. Stream for reading the cabinet file. True if the stream is a valid cabinet file (with no offset); false otherwise. Gets information about files in a cabinet or cabinet chain. A context interface to handle opening and closing of cabinet and file streams. A predicate that can determine which files to process, optional. Information about files in the cabinet stream. The cabinet provided by the stream context is not valid. The predicate takes an internal file path and returns true to include the file or false to exclude it. Extracts files from a cabinet or cabinet chain. A context interface to handle opening and closing of cabinet and file streams. An optional predicate that can determine which files to process. The cabinet provided by the stream context is not valid. The predicate takes an internal file path and returns true to include the file or false to exclude it. Exception class for cabinet operations. Creates a new CabException with a specified error message and a reference to the inner exception that is the cause of this exception. The message that describes the error. The exception that is the cause of the current exception. If the innerException parameter is not a null reference (Nothing in Visual Basic), the current exception is raised in a catch block that handles the inner exception. Creates a new CabException with a specified error message. The message that describes the error. Creates a new CabException. Initializes a new instance of the CabException class with serialized data. The SerializationInfo that holds the serialized object data about the exception being thrown. The StreamingContext that contains contextual information about the source or destination. Sets the SerializationInfo with information about the exception. The SerializationInfo that holds the serialized object data about the exception being thrown. The StreamingContext that contains contextual information about the source or destination. Gets the FCI or FDI cabinet engine error number. A cabinet engine error number, or 0 if the exception was not related to a cabinet engine error number. Gets the Win32 error code. A Win32 error code, or 0 if the exception was not related to a Win32 error. Disposes of resources allocated by the cabinet engine. If true, the method has been called directly or indirectly by a user's code, so managed and unmanaged resources will be disposed. If false, the method has been called by the runtime from inside the finalizer, and only unmanaged resources will be disposed. Object representing a compressed file within a cabinet package; provides operations for getting the file properties and extracting the file. Creates a new CabinetFileInfo object representing a file within a cabinet in a specified path. An object representing the cabinet containing the file. The path to the file within the cabinet. Usually, this is a simple file name, but if the cabinet contains a directory structure this may include the directory. Creates a new CabinetFileInfo object with all parameters specified, used internally when reading the metadata out of a cab. The internal path and name of the file in the cab. The folder number containing the file. The cabinet number where the file starts. The stored attributes of the file. The stored last write time of the file. The uncompressed size of the file. Initializes a new instance of the CabinetFileInfo class with serialized data. The SerializationInfo that holds the serialized object data about the exception being thrown. The StreamingContext that contains contextual information about the source or destination. Sets the SerializationInfo with information about the archive. The SerializationInfo that holds the serialized object data. The StreamingContext that contains contextual information about the source or destination. Refreshes the information in this object with new data retrieved from an archive. Fresh instance for the same file just read from the archive. This implementation refreshes the . Gets or sets the cabinet that contains this file. The CabinetInfo instance that retrieved this file information -- this may be null if the CabinetFileInfo object was returned directly from a stream. Gets the full path of the cabinet that contains this file. The full path of the cabinet that contains this file. Gets the number of the folder containing this file. The number of the cabinet folder containing this file. A single folder or the first folder of a cabinet (or chain of cabinets) is numbered 0. Object representing a cabinet file on disk; provides access to file-based operations on the cabinet file. Generally, the methods on this class are much easier to use than the stream-based interfaces provided by the class. Creates a new CabinetInfo object representing a cabinet file in a specified path. The path to the cabinet file. When creating a cabinet file, this file does not necessarily exist yet. Initializes a new instance of the CabinetInfo class with serialized data. The SerializationInfo that holds the serialized object data about the exception being thrown. The StreamingContext that contains contextual information about the source or destination. Creates a compression engine that does the low-level work for this object. A new instance. Each instance will be d immediately after use. Gets information about the files contained in the archive. A list of objects, each containing information about a file in the archive. Gets information about the certain files contained in the archive file. The search string, such as "*.txt". A list of objects, each containing information about a file in the archive. Generic class for managing allocations of integer handles for objects of a certain type. The type of objects the handles refer to. Auto-resizing list of objects for which handles have been allocated. Each handle is just an index into this list. When a handle is freed, the list item at that index is set to null. Creates a new HandleManager instance. Allocates a new handle for an object. Object that the handle will refer to. New handle that can be later used to retrieve the object. Frees a handle that was previously allocated. Afterward the handle will be invalid and the object it referred to can no longer retrieved. Handle to be freed. Gets the object of a handle, or null if the handle is invalid. The integer handle previously allocated for the desired object. The object for which the handle was allocated. Native DllImport methods and related structures and constants used for cabinet creation and extraction via cabinet.dll. A direct import of constants, enums, structures, delegates, and functions from fci.h. Refer to comments in fci.h for documentation. Error codes that can be returned by FCI. FCI compression algorithm types and parameters. Reason for FCI status callback. Cabinet information structure used for FCI initialization and GetNextCabinet callback. Ensures that the FCI handle is safely released. Creates a new unintialized handle. The handle will be initialized when it is marshalled back from native code. Releases the handle by calling FDIDestroy(). True if the release succeeded. Checks if the handle is invalid. An FCI handle is invalid when it is zero. A direct import of constants, enums, structures, delegates, and functions from fdi.h. Refer to comments in fdi.h for documentation. Error codes that can be returned by FDI. Type of notification message for the FDI Notify callback. Cabinet information structure filled in by FDI IsCabinet. Cabinet notification details passed to the FDI Notify callback. Ensures that the FDI handle is safely released. Creates a new unintialized handle. The handle will be initialized when it is marshalled back from native code. Releases the handle by calling FDIDestroy(). True if the release succeeded. Checks if the handle is invalid. An FDI handle is invalid when it is zero. Error info structure for FCI and FDI. Before being passed to FCI or FDI, this structure is pinned in memory via a GCHandle. The pinning is necessary to be able to read the results, since the ERF structure doesn't get marshalled back out after an error. Clears the error information. Gets or sets the cabinet error code. Gets or sets the Win32 error code. GCHandle doesn't like the bool type, so use an int underneath. Distribution specific strings. News URL for the distribution. Short product name for the distribution. Support URL for the distribution. Telemetry URL format for the distribution.