Функция InjectNtmsMedia (ntmsapi.h)
[Диспетчер съемных носителей больше недоступен в Windows 7 и Windows Server 2008 R2.]
Функция InjectNtmsMedia позволяет вставлять мультимедиа в порт указанной библиотеки. Если библиотека занята, RSM помещает в очередь InjectNtmsMedia и возвращает успешное выполнение.
Синтаксис
DWORD InjectNtmsMedia(
[in] HANDLE hSession,
[in] LPNTMS_GUID lpLibraryId,
[out] LPNTMS_GUID lpInjectOperation,
[in] DWORD dwAction
);
Параметры
[in] hSession
Дескриптор сеанса, возвращаемого функцией OpenNtmsSession .
[in] lpLibraryId
Уникальный идентификатор объекта библиотеки.
[out] lpInjectOperation
GUID операции вставки библиотеки. Если параметр dwAction имеет NTMS_INJECT_START, этот параметр получает GUID для операции. Если параметр dwAction NTMS_INJECT_STOP, для этого параметра необходимо задать идентификатор GUID, чтобы операция была остановлена.
[in] dwAction
Этот параметр может принимать одно из указанных ниже значений.
Возвращаемое значение
Эта функция возвращает одно из следующих значений.
Значение | Значение |
---|---|
|
NTMS_CONTROL_ACCESS в библиотеку запрещено. Возможны и другие ошибки безопасности, но они указывают на ошибку подсистемы безопасности. |
|
База данных недоступна или повреждена. |
|
База данных заполнена. |
|
Библиотека отключена. |
|
Идентификатор сеанса отсутствует или недопустим. |
|
Действие Остановить было выполнено с недопустимым идентификатором операции. |
|
Отсутствует указатель идентификатора библиотеки или идентификатора операции. |
|
Идентификатор библиотеки относится к автономной библиотеке, которая не может извлечь носитель. |
|
Во время обработки произошел сбой выделения. |
|
Вставка поставлена в очередь. |
Комментарии
Эта функция возвращается в приложение сразу после постановки запроса на вставку в очередь.
Если библиотека, указанная функцией InjectNtmsMedia , не имеет порта, используйте функцию AccessNtmsLibraryDoor для вставки и извлечения носителя.
Эту функцию нельзя использовать с автономной библиотекой.
Вставка начинает процесс вставки мультимедиа в библиотеку. Поскольку библиотеки зависят от функциональности объекта NTMS_IEPORT, каждое устройство может работать немного по-разному. Ниже описано, как RSM обычно обрабатывает внедрение.
Вставка мультимедиа в библиотеку
- Разрешить, разблокировать или расширить NTMS_IEPORT.
- Выполните опрос на наличие полного NTMS_IEPORT, отозваемого NTMS_IEPORT, команды Остановить внедрение или значения времени ожидания. Если ни одного из них не произошло, продолжайте ждать. (Порты вставки и извлечения с несколькими патронами не проверяются на наличие полного состояния.)
- При возникновении одного из предыдущих событий NTMS_IEPORT блокируется, каждый носитель в NTMS_IEPORT перемещается в слот, а команда идентифицировать среду помещается в очередь для каждого носителя.
Если свободных слотов нет, функция InjectNtmsMedia получает сообщение об ошибке.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | ntmsapi.h |
Библиотека | Ntmsapi.lib |
DLL | Ntmsapi.dll |