Поделиться через


структура CREATE_VIRTUAL_DISK_PARAMETERS (virtdisk.h)

Содержит параметры создания виртуального жесткого диска (VHD), предоставляя управление вновь созданным виртуальным диском и сведения о нем.

Синтаксис

typedef struct _CREATE_VIRTUAL_DISK_PARAMETERS {
  CREATE_VIRTUAL_DISK_VERSION Version;
  union {
    struct {
      GUID      UniqueId;
      ULONGLONG MaximumSize;
      ULONG     BlockSizeInBytes;
      ULONG     SectorSizeInBytes;
      PCWSTR    ParentPath;
      PCWSTR    SourcePath;
    } Version1;
    struct {
      GUID                   UniqueId;
      ULONGLONG              MaximumSize;
      ULONG                  BlockSizeInBytes;
      ULONG                  SectorSizeInBytes;
      ULONG                  PhysicalSectorSizeInBytes;
      PCWSTR                 ParentPath;
      PCWSTR                 SourcePath;
      OPEN_VIRTUAL_DISK_FLAG OpenFlags;
      VIRTUAL_STORAGE_TYPE   ParentVirtualStorageType;
      VIRTUAL_STORAGE_TYPE   SourceVirtualStorageType;
      GUID                   ResiliencyGuid;
    } Version2;
  };
} CREATE_VIRTUAL_DISK_PARAMETERS, *PCREATE_VIRTUAL_DISK_PARAMETERS;

Члены

Version

Значение из перечисления CREATE_VIRTUAL_DISK_VERSION , которое является дискриминантом для объединения.

Значение Значение
CREATE_VIRTUAL_DISK_VERSION_1
1
Используйте член версии 1 этой структуры.
CREATE_VIRTUAL_DISK_VERSION_2
2
Используйте элемент Version2 этой структуры.

Version1

Эта структура используется, если член ВерсииCREATE_VIRTUAL_DISK_VERSION_1 (1).

Version1.UniqueId

Уникальный идентификатор для назначения объекту виртуального диска. Если для этого элемента задано значение 0, система создает уникальный идентификатор.

Version1.MaximumSize

Максимальный размер виртуального диска (в байтах) объекта виртуального диска. Должно быть кратно 512.

Если указан параметр ParentPath , это значение должно быть равно нулю.

Если указан параметр SourcePath , это значение может быть равно нулю, чтобы указать размер используемого исходного виртуального диска. В противном случае указанный размер должен быть больше или равен размеру исходного диска.

Version1.BlockSizeInBytes

Внутренний размер блоков объектов виртуального диска в байтах. Для этого параметра должно быть задано одно из следующих значений.

Значение Значение
CREATE_VIRTUAL_DISK_PARAMETERS_DEFAULT_BLOCK_SIZE
0
Это значение по умолчанию и представляет размер блока 2 МБ.
524288 (0x80000)
Размер блока составляет 512 КБ.
2097152 (0x200000)
Размер блока составляет 2 МБ.

Version1.SectorSizeInBytes

Внутренний размер секторов объектов виртуального диска. Необходимо задать значение 512.

Значение Значение
CREATE_VIRTUAL_DISK_PARAMETERS_DEFAULT_SECTOR_SIZE
0x200
Значение по умолчанию и только допустимый размер— 512 байт.

Version1.ParentPath

Необязательный полный путь к родительскому объекту виртуального диска. Связывает новый виртуальный диск с существующим виртуальным диском.

Если этот параметр не имеет значение NULL, sourcePath должен иметь значение NULL.

Version1.SourcePath

Необязательный полный путь для предварительного заполнения нового объекта виртуального диска блочных данных с существующего диска. Этот путь может относиться к виртуальному диску или физическому диску.

Если этот параметр не имеет значение NULL, ParentPath должен иметь значение NULL.

Version2

Эта структура используется, если элемент Version имеет CREATE_VIRTUAL_DISK_VERSION_2 (2).

Windows 7 и Windows Server 2008 R2: Эта структура не поддерживается до Windows 8 и Windows Server 2012.

Version2.UniqueId

Уникальный идентификатор для назначения объекту виртуального диска. Если для этого элемента задано значение 0, система создает уникальный идентификатор.

Version2.MaximumSize

Максимальный размер виртуального диска (в байтах) объекта виртуального диска. Должно быть кратно 512.

Если указан параметр ParentPath , это значение должно быть равно нулю.

Если указан параметр SourcePath , это значение может быть равно нулю, чтобы указать размер используемого исходного виртуального диска. В противном случае указанный размер должен быть больше или равен размеру исходного диска.

Version2.BlockSizeInBytes

Внутренний размер блоков объектов виртуального диска в байтах. Для VHDX это значение должно быть кратно 1 МБ от 1 до 256 МБ. Для VHD 1 необходимо задать одно из следующих значений.

Значение Значение
CREATE_VIRTUAL_DISK_PARAMETERS_DEFAULT_BLOCK_SIZE
0
Это значение по умолчанию и представляет размер блока 2 МБ. Это единственное поддерживаемое значение для фиксированных виртуальных дисков VHD 1.
524288 (0x80000)
Размер блока составляет 512 КБ. Это значение не поддерживается на фиксированных виртуальных дисках VHD 1.
2097152 (0x200000)
Размер блока составляет 2 МБ. Это значение не поддерживается на фиксированных виртуальных дисках VHD 1.

Version2.SectorSizeInBytes

Внутренний размер секторов объектов виртуального диска. Для VHDX необходимо задать значение 512 (0x200) или 4096 (0x1000). Для VHD 1 должно быть установлено значение 512.

Version2.PhysicalSectorSizeInBytes

Version2.ParentPath

Необязательный полный путь к родительскому объекту виртуального диска. Связывает новый виртуальный диск с существующим виртуальным диском.

Если этот параметр не имеет значение NULL, sourcePath должен иметь значение NULL.

Version2.SourcePath

Необязательный полный путь для предварительного заполнения нового объекта виртуального диска блочных данных с существующего диска. Этот путь может относиться к виртуальному диску или физическому диску.

Если этот параметр не имеет значение NULL, ParentPath должен иметь значение NULL.

Version2.OpenFlags

Ноль или более флагов из перечисления OPEN_VIRTUAL_DISK_FLAG , описывающих способ открытия виртуального диска.

Version2.ParentVirtualStorageType

Структура VIRTUAL_STORAGE_TYPE , описывающая родительский виртуальный диск, указанный в элементе ParentPath .

Version2.SourceVirtualStorageType

Структура VIRTUAL_STORAGE_TYPE , описывающая исходный виртуальный диск, указанный в элементе SourcePath .

Version2.ResiliencyGuid

GUID устойчивости для файла.

Примечание

Следующие параметры, предваряемые версиями Version3 и Version4, предназначены для внутреннего использования.

Version3

Version3.UniqueId

Version3.MaximumSize

Version3.BlockSizeInBytes

Version3.SectorSizeInBytes

Version3.PhysicalSectorSizeInBytes

Version3.ParentPath

Version3.SourcePath

Version3.OpenFlags

Version3.ParentVirtualStorageType

Version3.SourceVirtualStorageType

Version3.ResiliencyGuid

Version3.SourceLimitPath

Version3.BackingStorageType

Version4

Version4.UniqueId

Version4.MaximumSize

Version4.BlockSizeInBytes

Version4.SectorSizeInBytes

Version4.PhysicalSectorSizeInBytes

Version4.ParentPath

Version4.SourcePath

Version4.OpenFlags

Version4.ParentVirtualStorageType

Version4.SourceVirtualStorageType

Version4.ResiliencyGuid

Version4.SourceLimitPath

Version4.BackingStorageType

Version4.PmemAddressAbstractionType

Version4.DataAlignment

Требования

Требование Значение
Минимальная версия клиента Windows 7
Минимальная версия сервера Windows Server 2008 R2
Верхняя часть virtdisk.h

См. также раздел

Сведения о виртуальном жестком диске

CreateVirtualDisk

Именование файлов, путей и пространств имен

Справочник по VHD

Структуры VHD