CBDrive Configuration

The class accepts one or more of the following configuration settings. Configuration settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the class, access to these internal properties is provided through the Config method.

CBDrive Configuration Settings

AllowMoveStreamsBetweenFiles:   Whether alternate streams may be moved from one file to another.

This setting specifies whether alternate streams may be moved from one file to another using MoveFile or (for the CBDrive class) directly by the OS.

By default, this setting is disabled, and alternate streams can only be renamed within the same file, not moved between them.

Note: This setting cannot be changed within events.

AsyncDeleteStorageNotifications:   Whether system broadcasts for virtual drive deletion are sent asynchronously.

This setting specifies whether the WM_DEVICECHANGE broadcast is sent asynchronously (true) or synchronously (false) when the virtual drive is deleted using CloseVault.

By default, this setting is enabled, and the broadcast is sent asynchronously. This is typically sufficient, but applications may disable this setting if they find that Windows Explorer is still presenting virtual drives as available after they've been deleted (which may occur if the application exits immediately after deleting a virtual drive).

AutoCompactDelay:   How long a vault must remain idle before starting automatic compaction.

When a vault is open, and the AutoCompactAt property is set to a non-zero value, the class will automatically compact the vault in the background as necessary (assuming it is eligible for automatic compaction, as described by the AutoCompactAt documentation). This setting specifies how many milliseconds a vault must remain idle before starting automatic compaction operations.

By default, this setting is set to 0, and automatic compaction operations will start without delay.

Note: This setting cannot be changed within events.

DefaultFileCompressionLevel:   The default compression level to use when creating files and alternate streams.

This setting specifies the default compression level that the class should use when creating files and alternate streams, if applicable. Valid values are 0 through 9; where 0 means "use the default compression level for the selected compression algorithm".

By default, this setting is set to 0.

DeviceChangeBroadcastsEnabled:   Whether the user-mode API broadcasts WM_DEVICECHANGE messages.

This setting specifies whether the class's user-mode API should broadcast WM_DEVICECHANGE messages to top-level windows when necessary.

By default, this setting is enabled, causing the user-mode API to broadcast such messages. However, if the Helper DLL is installed, then it will also send such broadcasts upon being notified by the driver, causing a duplicate message to be sent; applications should disable this setting to prevent the duplicate broadcast.

LoggingEnabled:   Whether extended logging is enabled.

This setting specifies whether extended logging is enabled for this class; it is disabled by default. Please refer to the Error Reporting and Handling topic for more information.

This setting's value is stored in the registry and is persistent; it requires administrative rights to be changed.

MaxNonPagedNameLength:   The maximum number of name characters to store directly within a vault item.

This setting specifies the maximum number of name characters that may be stored within a vault item directly. If a vault item's name is longer than the specified value, then the first MaxNonPagedNameLength characters are stored directly, and the rest are stored in a dedicated vault page. The minimum valid non-paged name length is four characters (4).

A vault's max non-paged name length is permanent, it cannot be changed after the vault is created. When a vault is open, this setting cannot be changed, it can only be queried to obtain the value used by the vault.

By default, this setting is set to 0, and the class will automatically choose an optimal value when creating a vault based on PageSize.

Note: This setting cannot be changed when Active is true, and cannot be changed within events.

PageCacheSize:   The size of the in-memory vault page cache.

This setting controls the size of the built-in data cache; it is specified in bytes. The cache must be large enough to contain at least 8 pages, so this setting's minimum valid value is 8 times the value of the PageSize property.

By default, this setting is set to 16777216 (16 MB).

Note: This setting can only be changed when Active is true.

PartSize:   The part size used by a multipart vault.

This setting controls the part size to use when creating new multipart vaults, and reflects the part size used by the currently-open vault. Part size is specified in bytes.

A multipart vault's part size is permanent, it cannot be changed after the vault is created. When a vault is open, this setting cannot be changed, it can only be queried to obtain the value used by the vault.

By default, this setting is set to 0, and the class will not create multipart vaults.

Note: This setting cannot be changed when Active is true, and cannot be changed within events.

SupportSearchIndexer:   Specifies whether the driver must take additional measures to support indexing by Windows Search.

The Search Indexer of Windows 10 has been recently modified in the way that Search Indexer stopped indexing virtual disks. This happens because of the missing mounting point when the disk is created.

This setting, when enabled, tells the driver to create a fake mounting point and use it to work around the Search Indexer bug. By default, this setting is disabled.

Note: This property cannot be changed within events.

Base Configuration Settings

BuildInfo:   Information about the product's build.

When queried, this setting will return a string containing information about the product's build.

LicenseInfo:   Information about the current license.

When queried, this setting will return a string containing information about the license this instance of a class is using. It will return the following information:

  • Product: The product the license is for.
  • Product Key: The key the license was generated from.
  • License Source: Where the license was found (e.g. RuntimeLicense, License File).
  • License Type: The type of license installed (e.g. Royalty Free, Single Server).

 
 
Copyright (c) 2020 Callback Technologies, Inc. - All rights reserved.
CBFS Storage 2020 Qt Edition - Version 20.0 [Build 7649]