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


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

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

Синтаксис

typedef struct _VIRTUAL_DISK_PROGRESS {
  DWORD     OperationStatus;
  ULONGLONG CurrentValue;
  ULONGLONG CompletionValue;
} VIRTUAL_DISK_PROGRESS, *PVIRTUAL_DISK_PROGRESS;

Члены

OperationStatus

Значение состояния системного кода ошибки . Этот элемент будет ERROR_IO_PENDING , если операция еще выполняется; В противном случае значением является код результата завершенной операции.

CurrentValue

Текущий ход выполнения операции, используемый в сочетании с элементом CompletionValue .

Это значение имеет смысл, только если параметр OperationStatusимеет ERROR_IO_PENDING.

CompletionValue

Значение, которое будет иметь член CurrentValue , если операция была завершена.

Это значение имеет смысл, только если параметр OperationStatusимеет ERROR_IO_PENDING.

Комментарии

Члены CurrentValue и CompletionValue предназначены для вычисления процентного значения, и конкретные числовые значения каждого из них не являются значимыми. Значимым является только результат следующего вычисления: CurrentValue , деленное на CompletionValue , умноженное на 100, равное проценту завершения, до 100 процентов включительно, даже если OperationStatus по-прежнему возвращает ERROR_IO_PENDING. Этот процент не всегда гарантированно увеличивается при последующих вызовах функции GetVirtualDiskOperationProgress и может уменьшиться. Эти уменьшенные процентные значения можно спокойно игнорировать, если отслеживание хода выполнения должно быть только положительным путем локального хранения текущего максимального процента.

Члены CurrentValue и CompletionValue могут отличаться в последующих вызовах функции GetVirtualDiskOperationProgress , поэтому их необходимо использовать одновременно в одном вызове. То есть недопустимо сохранять одно из них локально, а затем выполнять еще один вызов функции GetVirtualDiskOperationProgress , ожидая использовать одно из предыдущих значений с другим значением из более недавнего вызова.

Элемент OperationStatus является индикатором завершения, а не вычислением процента завершения, описанным ранее. Пока этот элемент данных возвращается с кодом состояния ERROR_IO_PENDING , операция ввода-вывода еще не завершена.

Требования

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

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

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

GetVirtualDiskOperationProgress

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