Функция SHFormatDrive (shlobj_core.h)

[SHFormatDrive доступен для использования в операционных системах, указанных в разделе Требования. Он может быть изменен или недоступен в последующих версиях.]

Открывает диалоговое окно Формат оболочки.

Синтаксис

DWORD SHFormatDrive(
  [in] HWND hwnd,
       UINT drive,
       UINT fmtID,
       UINT options
);

Параметры

[in] hwnd

Тип: HWND

Дескриптор родительского окна диалогового окна. Диалоговое окно Формат должно иметь родительское окно; Поэтому этот параметр не может иметь значение NULL.

drive

Тип: UINT

Диск для форматирования. Значение этого параметра представляет буквенный диск, начинающийся с 0 для диска A:. Например, значение 2 означает диск C:.

fmtID

Тип: UINT

Идентификатор физического формата. В настоящее время определен только следующий флаг.

SHFMT_ID_DEFAULT (0xFFFF)

Идентификатор формата по умолчанию.

options

Тип: UINT

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

SHFMT_OPT_FULL (0x0001)

0x001. Если этот флаг установлен, выбран параметр Быстрый формат .

Эта функция включена в Shlobj.h только в Windows XP с пакетом обновления 1 (SP1) и более поздних версий.

Windows XP: До Windows XP с пакетом обновления 1 (SP1) эта функция была доступна через Shell32.lib.

SHFMT_OPT_SYSONLY (0x0002)

0x002. Выбирает параметр Создать загрузочный диск MS-DOS , создав загрузочный диск системы.

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

Тип: DWORD

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

Код возврата Описание
SHFMT_ERROR
Во время последнего формата произошла ошибка. Это не означает, что диск не отформатирован.
SHFMT_CANCEL
Последний формат был отменен.
SHFMT_NOFORMAT
Диск не может быть отформатирован.

Комментарии

Формат управляется интерфейсом диалогового окна. Это значит, что пользователь должен нажать кнопку ОК , чтобы фактически начать формат. Этот формат не может быть запущен программным способом.

Примеры

При вызове SHFormatDrive открывается диалоговое окно Формат оболочки для диска на диске A с выбранными параметрами форматирования по умолчанию.

SHFormatDrive(hMainWnd, 0, SHFMT_ID_DEFAULT, 0);

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header shlobj_core.h (включая Shlobj.h)
Библиотека Shell32.lib
DLL Shell32.dll (версия 5.0 или более поздняя)