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


Функция ExpandVirtualDisk (virtdisk.h)

Увеличивает размер фиксированного или динамически расширяемого виртуального жесткого диска (VHD).

Синтаксис

DWORD ExpandVirtualDisk(
  [in]           HANDLE                          VirtualDiskHandle,
  [in]           EXPAND_VIRTUAL_DISK_FLAG        Flags,
  [in]           PEXPAND_VIRTUAL_DISK_PARAMETERS Parameters,
  [in, optional] LPOVERLAPPED                    Overlapped
);

Параметры

[in] VirtualDiskHandle

Дескриптор открытого виртуального диска, который должен быть открыт с помощью флага VIRTUAL_DISK_ACCESS_METAOPS . Сведения об открытии виртуального диска см. в разделе Функция OpenVirtualDisk .

[in] Flags

Должно быть EXPAND_VIRTUAL_DISK_FLAG_NONE значение перечисления EXPAND_VIRTUAL_DISK_FLAG .

[in] Parameters

Указатель на допустимую структуру EXPAND_VIRTUAL_DISK_PARAMETERS , содержащую данные параметров расширения.

[in, optional] Overlapped

Необязательный указатель на допустимую структуру OVERLAPPED , если требуется асинхронная операция.

Возвращаемое значение

Состояние запроса.

Если функция выполнена успешно, возвращаемое значение будет ERROR_SUCCESS.

Если функция завершается сбоем, возвращаемое значение представляет собой код ошибки. Дополнительные сведения см. в разделе Системные коды ошибок.

Комментарии

Функция ExpandVirtualDisk выполняет операцию на месте и, следовательно, не создает виртуальный диск.

Операция развертывания действительна только для фиксированных и расширяемых виртуальных дисков и сделает недействительной цепочку разностных виртуальных дисков.

Для развертывания виртуального диска требуется отсоединить виртуальный диск во время операции.

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

Для расширяемого виртуального диска функция ExpandVirtualDisk может не привести к созданию файла большего размера, так как размер является виртуальным и физически не будет увеличиваться до тех пор, пока не будет использоваться.

Если виртуальный диск является расширяемым и на томе узла недостаточно места для нового размера, функция ExpandVirtualDisk в любом случае может быть успешной. Будущие операции записи на виртуальный диск могут завершиться ошибкой, если на томе узла заканчивается место по мере расширения виртуального диска.

Требования

Требование Значение
Минимальная версия клиента Windows 7
Минимальная версия сервера Windows Server 2008 R2
Целевая платформа Windows
Header virtdisk.h
Библиотека VirtDisk.lib
DLL VirtDisk.dll

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

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

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