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


Функция CreateTapePartition (winbase.h)

Функция CreateTapePartition переформатирует ленту.

Синтаксис

DWORD CreateTapePartition(
  [in] HANDLE hDevice,
  [in] DWORD  dwPartitionMethod,
  [in] DWORD  dwCount,
  [in] DWORD  dwSize
);

Параметры

[in] hDevice

Дескриптор устройства, на котором будет создана новая секция. Этот дескриптор создается с помощью функции CreateFile .

[in] dwPartitionMethod

Тип создаваемой секции. Чтобы определить, какой тип секций поддерживает ваше устройство, см. документацию по оборудованию. Этот параметр может иметь одно из следующих значений.

Значение Значение
TAPE_FIXED_PARTITIONS
0L
Секционирует ленту на основе определения секций по умолчанию устройства. Параметры dwCount и dwSize игнорируются.
TAPE_INITIATOR_PARTITIONS
2L
Разбивает ленту на количество и размер секций, указанных dwCount и dwSize соответственно, за исключением последней секции. Размер последней секции равен оставшейся части ленты.
TAPE_SELECT_PARTITIONS
1L
Секционирует ленту на количество секций, указанное в dwCount. Параметр dwSize игнорируется. Размер секций определяется размером секции устройства по умолчанию. Дополнительные сведения см. в документации для ленточного устройства.

[in] dwCount

Количество создаваемых секций. Функция GetTapeParameters предоставляет максимальное количество секций, которые может поддерживать лента.

[in] dwSize

Размер каждой секции в мегабайтах. Это значение игнорируется, если параметр dwPartitionMethodTAPE_SELECT_PARTITIONS.

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

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

Если функция завершается сбоем, она может вернуть один из следующих кодов ошибок.

Ошибка Описание
ERROR_BEGINNING_OF_MEDIA
1102L
Попытка получить доступ к данным до начала среднего маркера завершилась сбоем.
ERROR_BUS_RESET
1111L
В шине обнаружено условие сброса.
ERROR_END_OF_MEDIA
1100L
Маркер конца ленты был достигнут во время операции.
ERROR_FILEMARK_DETECTED
1101L
Метка файла была достигнута во время операции.
ERROR_SETMARK_DETECTED
1103L
Метка была достигнута во время операции.
ERROR_NO_DATA_DETECTED
1104L
Маркер конца данных был достигнут во время операции.
ERROR_PARTITION_FAILURE
1105L
Не удалось секционировать ленту.
ERROR_INVALID_BLOCK_LENGTH
1106L
Неправильный размер блока на новой ленте в многотомном разделе.
ERROR_DEVICE_NOT_PARTITIONED
1107L
Не удалось найти сведения о секции при загрузке ленты.
ERROR_MEDIA_CHANGED
1110L
Лента, которая находилась в диске, была заменена или удалена.
ERROR_NO_MEDIA_IN_DRIVE
1112L
На диске нет носителя.
ERROR_NOT_SUPPORTED
50L
Драйвер ленты не поддерживает запрошенную функцию.
ERROR_UNABLE_TO_LOCK_MEDIA
1108L
Не удалось заблокировать механизм извлечения.
ERROR_UNABLE_TO_UNLOAD_MEDIA
1109L
Попытка выгрузить ленту завершилась сбоем.
ERROR_WRITE_PROTECT
19L
Носитель защищен от записи.

Комментарии

Создание секций переформатирует ленту. Вся предыдущая информация, записанная на ленту, уничтожается.

Требования

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

См. также

CreateFile

GetTapeParameters