Функция EjectNtmsCleaner (ntmsapi.h)

[Диспетчер съемных носителей больше недоступен в Windows 7 и Windows Server 2008 R2.]

Функция EjectNtmsCleaner извлекает очищающий патрон из зарезервированного в настоящее время слота для очистки.

Синтаксис

DWORD EjectNtmsCleaner(
  [in]      HANDLE      hSession,
  [in]      LPNTMS_GUID lpLibrary,
  [in, out] LPNTMS_GUID lpEjectOperation,
  [in]      DWORD       dwAction
);

Параметры

[in] hSession

Дескриптор сеанса, возвращаемого функцией OpenNtmsSession .

[in] lpLibrary

Уникальный идентификатор объекта библиотеки.

[in, out] lpEjectOperation

GUID операции извлечения библиотеки процессов. Если параметр dwAction имеет NTMS_EJECT_START, этот параметр получает GUID для операции. Если параметр dwAction NTMS_EJECT_STOP, для этого параметра необходимо задать guid, чтобы операция была остановлена.

[in] dwAction

Выполняемая операция. Этот параметр может иметь одно из следующих значений.

Значение Значение
NTMS_EJECT_START
Запускает операцию извлечения с помощью порта. Указанный носитель извлекается до тех пор, пока не произойдет событие времени ожидания или функция снова не вызывается с NTMS_EJECT_STOP. Значение времени ожидания указывается в объекте библиотеки и применяется ко всем выбросам в библиотеке.
NTMS_EJECT_STOP
Для библиотек только с NTMS_IEPORT объектами. Завершает процесс извлечения, заданный lpEjectOperation до истечения времени ожидания события.

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

Эта функция возвращает одно из следующих значений.

Значение Значение
ERROR_ACCESS_DENIED
Доступ к одному или нескольким объектам RSM запрещен.
ERROR_INVALID_HANDLE
Недопустимое значение, указанное в параметре hSession .
ERROR_INVALID_LIBRARY
Не удалось получить определение библиотеки из базы данных.
ERROR_NO_SLOT_SET
В этой библиотеке не зарезервирован более чистый слот.
ERROR_NOT_CONNECTED
Не удается подключиться к службе RSM.
ERROR_SLOT_EMPTY
Слот для очистки зарезервирован, но уже пуст.
ERROR_SLOT_NOT_PRESENT
Слот для очистки зарезервирован, но в настоящее время он не установлен в библиотеке. Эта ошибка возникает, когда в библиотеке отсутствует хотя бы один журнал.
ERROR_SUCCESS
Функция выполнена успешно.

Комментарии

Функция EjectNtmsCleaner возвращается в приложение сразу после постановки запроса на извлечение в очередь.

Если библиотека, указанная в функции EjectNtmsCleaner , имеет объект NTMS_IEPORT, RSM использует объект NTMS_IEPORT для извлечения очистки. Если объект NTMS_IEPORT отсутствует, объект NTMS_IEDOOR используется, чтобы разрешить оператору получить доступ к слоту очистки.

Выброшенные очистители не отслеживаются в автономной библиотеке.

Требования

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

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

CleanNtmsDrive

Функции очистки управления

InjectNtmsCleaner

ReleaseNtmsCleanerSlot

ReserveNtmsCleanerSlot