# ISystemProperties Interface Reference

The ISystemProperties interface represents global properties of the given VirtualBox installation. More...

List of all members.

## Public Member Functions
void | getMaxDevicesPerPortForStorageBus (in StorageBus bus,[retval] out unsigned long maxDevicesPerPort)
| Returns the maximum number of devices which can be attached to a port for the given storage bus.
void | getMinPortCountForStorageBus (in StorageBus bus,[retval] out unsigned long minPortCount)
| Returns the minimum number of ports the given storage bus supports.
void | getMaxPortCountForStorageBus (in StorageBus bus,[retval] out unsigned long maxPortCount)
| Returns the maximum number of ports the given storage bus supports.
void | getMaxInstancesOfStorageBus (in StorageBus bus,[retval] out unsigned long maxInstances)
| Returns the maximum number of storage bus instances which can be configured for each VM.
void | getDeviceTypesForStorageBus (in StorageBus bus,[retval] out DeviceType[] deviceTypes)
| Returns list of all the supported device types (DeviceType) for the given type of storage bus.
## Public Attributes
readonly attribute unsigned long | minGuestRAM
| Minimum guest system memory in Megabytes.
readonly attribute unsigned long | maxGuestRAM
| Maximum guest system memory in Megabytes.
readonly attribute unsigned long | minGuestVRAM
| Minimum guest video memory in Megabytes.
readonly attribute unsigned long | maxGuestVRAM
| Maximum guest video memory in Megabytes.
readonly attribute unsigned long | minGuestCPUCount
| Minimum CPU count.
readonly attribute unsigned long | maxGuestCPUCount
| Maximum CPU count.
readonly attribute unsigned long long | maxVDISize
| Maximum size of a virtual disk image in Megabytes.
readonly attribute unsigned long | networkAdapterCount
| Number of network adapters associated with every IMachine instance.
readonly attribute unsigned long | serialPortCount
| Number of serial ports associated with every IMachine instance.
readonly attribute unsigned long | parallelPortCount
| Number of parallel ports associated with every IMachine instance.
readonly attribute unsigned long | maxBootPosition
| Maximum device position in the boot order.
attribute wstring | defaultMachineFolder
| Full path to the default directory used to create new or open existing machines when a settings file name contains no path.
attribute wstring | defaultHardDiskFolder
| Full path to the default directory used to create new or open existing virtual disks.
readonly attribute IMediumFormat[] | mediumFormats
| List of all medium storage formats supported by this VirtualBox installation.
attribute wstring | defaultHardDiskFormat
| Identifier of the default medium format used by VirtualBox.
attribute wstring | remoteDisplayAuthLibrary
| Library that provides authentication for VRDP clients.
attribute wstring | webServiceAuthLibrary
| Library that provides authentication for webservice clients.
attribute unsigned long | LogHistoryCount
| This value specifies how many old release log files are kept.
readonly attribute AudioDriverType | defaultAudioDriver
| This value hold the default audio driver for the current system.

## Detailed Description

The ISystemProperties interface represents global properties of the given VirtualBox installation.

These properties define limits and default values for various attributes and parameters. Most of the properties are read-only, but some can be changed by a user.

Interface ID:
  `{8030645C-8FEF-4320-BB7B-C829F00069DC}`

## Member Function Documentation

void ISystemProperties::getMaxDevicesPerPortForStorageBus | ( | in StorageBus | bus,
|  | [retval] out unsigned long | maxDevicesPerPort |
| ) |  |  |

Returns the maximum number of devices which can be attached to a port for the given storage bus.

Parameters:

  | bus | The storage bus type to get the value for.
  | maxDevicesPerPort | The maximum number of devices which can eb attached to the port for the given storage bus.

void ISystemProperties::getMinPortCountForStorageBus | ( | in StorageBus | bus,
|  | [retval] out unsigned long | minPortCount |
| ) |  |  |

Returns the minimum number of ports the given storage bus supports.

Parameters:

  | bus | The storage bus type to get the value for.
  | minPortCount | The minimum number of ports for the given storage bus.

void ISystemProperties::getMaxPortCountForStorageBus | ( | in StorageBus | bus,
|  | [retval] out unsigned long | maxPortCount |
| ) |  |  |

Returns the maximum number of ports the given storage bus supports.

Parameters:

  | bus | The storage bus type to get the value for.
  | maxPortCount | The maximum number of ports for the given storage bus.

void ISystemProperties::getMaxInstancesOfStorageBus | ( | in StorageBus | bus,
|  | [retval] out unsigned long | maxInstances |
| ) |  |  |

Returns the maximum number of storage bus instances which can be configured for each VM.

This corresponds to the number of storage controllers one can have.

Parameters:

  | bus | The storage bus type to get the value for.
  | maxInstances | The maximum number of instances for the given storage bus.

void ISystemProperties::getDeviceTypesForStorageBus | ( | in StorageBus | bus,
|  | [retval] out DeviceType[] | deviceTypes |
| ) |  |  |

Returns list of all the supported device types (DeviceType) for the given type of storage bus.

Parameters:

  | bus | The storage bus type to get the value for.
  | deviceTypes | The list of all supported device types for the given storage bus.

## Member Data Documentation

readonly attribute unsigned long ISystemProperties::minGuestRAM

Minimum guest system memory in Megabytes.

readonly attribute unsigned long ISystemProperties::maxGuestRAM

Maximum guest system memory in Megabytes.

readonly attribute unsigned long ISystemProperties::minGuestVRAM

Minimum guest video memory in Megabytes.

readonly attribute unsigned long ISystemProperties::maxGuestVRAM

Maximum guest video memory in Megabytes.

readonly attribute unsigned long ISystemProperties::minGuestCPUCount

Minimum CPU count.

readonly attribute unsigned long ISystemProperties::maxGuestCPUCount

Maximum CPU count.

readonly attribute unsigned long long ISystemProperties::maxVDISize

Maximum size of a virtual disk image in Megabytes.

readonly attribute unsigned long ISystemProperties::networkAdapterCount

Number of network adapters associated with every IMachine instance.

readonly attribute unsigned long ISystemProperties::serialPortCount

Number of serial ports associated with every IMachine instance.

readonly attribute unsigned long ISystemProperties::parallelPortCount

Number of parallel ports associated with every IMachine instance.

readonly attribute unsigned long ISystemProperties::maxBootPosition

Maximum device position in the boot order.

This value corresponds to the total number of devices a machine can boot from, to make it possible to include all possible devices to the boot list.

See also:
  IMachine::setBootOrder

attribute wstring ISystemProperties::defaultMachineFolder

Full path to the default directory used to create new or open existing machines when a settings file name contains no path.

The initial value of this property is `<`VirtualBox_home`>/Machines`.

Note:
  Setting this property to `null` or an empty string will restore the initial value.

  When settings this property, the specified path can be absolute (full path) or relative to the VirtualBox home directory. When reading this property, a full path is always returned.

  The specified path may not exist, it will be created when necessary.

See also:
  IVirtualBox::createMachine, IVirtualBox::openMachine

attribute wstring ISystemProperties::defaultHardDiskFolder

Full path to the default directory used to create new or open existing virtual disks.

This path is used when the storage unit of a hard disk is a regular file in the host's file system and only a file name that contains no path is given.

The initial value of this property is `<`VirtualBox_home`>/HardDisks`.

Note:
  Setting this property to `null` or empty string will restore the initial value.

  When settings this property, the specified path can be relative to the VirtualBox home directory or absolute. When reading this property, a full path is always returned.

  The specified path may not exist, it will be created when necessary.

See also:
  IMedium, IVirtualBox::createHardDisk, IVirtualBox::openHardDisk, IMedium::location

readonly attribute IMediumFormat [] ISystemProperties::mediumFormats

List of all medium storage formats supported by this VirtualBox installation.

Keep in mind that the medium format identifier (IMediumFormat::id) used in other API calls like IVirtualBox::createHardDisk to refer to a particular medium format is a case-insensitive string. This means that, for example, all of the following strings:

              "VDI"
              "vdi"
              "VdI"

refer to the same medium format.

Note that the virtual medium framework is backend-based, therefore the list of supported formats depends on what backends are currently installed.

See also:
  IMediumFormat,

attribute wstring ISystemProperties::defaultHardDiskFormat

Identifier of the default medium format used by VirtualBox.

The medium format set by this attribute is used by VirtualBox when the medium format was not specified explicitly. One example is IVirtualBox::createHardDisk with the empty format argument. A more complex example is implicit creation of differencing media when taking a snapshot of a virtual machine: this operation will try to use a format of the parent medium first and if this format does not support differencing media the default format specified by this argument will be used.

The list of supported medium formats may be obtained by the mediaFormats call. Note that the default medium format must have a capability to create differencing media; otherwise operations that create media implicitly may fail unexpectedly.

The initial value of this property is `"VDI"` in the current version of the VirtualBox product, but may change in the future.

Note:
  Setting this property to `null` or empty string will restore the initial value.

See also:
  mediaFormats, IMediumFormat::id, IVirtualBox::createHardDisk

attribute wstring ISystemProperties::remoteDisplayAuthLibrary

Library that provides authentication for VRDP clients.

The library is used if a virtual machine's authentication type is set to "external" in the VM RemoteDisplay configuration.

The system library extension (".DLL" or ".so") must be omitted. A full path can be specified; if not, then the library must reside on the system's default library path.

The default value of this property is `"VRDPAuth"`. There is a library of that name in one of the default VirtualBox library directories.

For details about VirtualBox authentication libraries and how to implement them, please refer to the VirtualBox manual.

Note:
  Setting this property to `null` or empty string will restore the initial value.

attribute wstring ISystemProperties::webServiceAuthLibrary

Library that provides authentication for webservice clients.

The library is used if a virtual machine's authentication type is set to "external" in the VM RemoteDisplay configuration and will be called from within the IWebsessionManager::logon implementation.

As opposed to ISystemProperties::remoteDisplayAuthLibrary, there is no per-VM setting for this, as the webservice is a global resource (if it is running). Only for this setting (for the webservice), setting this value to a literal `"null"` string disables authentication, meaning that IWebsessionManager::logon will always succeed, no matter what user name and password are supplied.

The initial value of this property is `"VRDPAuth"`, meaning that the webservice will use the same authentication library that is used by default for VBoxVRDP (again, see ISystemProperties::remoteDisplayAuthLibrary). The format and calling convention of authentication libraries is the same for the webservice as it is for VBoxVRDP.

Note:
  Setting this property to `null` or empty string will restore the initial value.

attribute unsigned long ISystemProperties::LogHistoryCount

This value specifies how many old release log files are kept.

readonly attribute AudioDriverType ISystemProperties::defaultAudioDriver

This value hold the default audio driver for the current system.