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


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

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

Функция GetNtmsObjectInformation возвращает информационную структуру объекта для указанного объекта.

Синтаксис

DWORD GetNtmsObjectInformationA(
  [in]  HANDLE                    hSession,
  [in]  LPNTMS_GUID               lpObjectId,
  [out] LPNTMS_OBJECTINFORMATIONA lpInfo
);

Параметры

[in] hSession

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

[in] lpObjectId

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

[out] lpInfo

Указатель на структуру NTMS_OBJECTINFORMATION , которая получает сведения об объекте.

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

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

Значение Значение
ERROR_ACCESS_DENIED
NTMS_USE_ACCESS объекту или его контейнеру запрещено. Возможны и другие ошибки безопасности, но они указывают на ошибку подсистемы безопасности.

Windows XP: Права доступа не требуются.

ERROR_INVALID_HANDLE
Дескриптор сеанса отсутствует или недопустим.
ERROR_INVALID_PARAMETER
Отсутствует идентификатор объекта или структура сведений либо недопустимый размер или тип объекта.
ERROR_NOT_ENOUGH_MEMORY
Во время обработки произошел сбой выделения.
ERROR_OBJECT_NOT_FOUND
Недопустимый идентификатор объекта.
ERROR_SUCCESS
Функция выполнена успешно.

Комментарии

Перед использованием функции GetNtmsObjectInformation необходимо правильно задать размер и тип структуры информации в параметре lpInfo.

Чтобы избежать непредсказуемых результатов, приложения должны вызывать функцию GetNtmsObjectInformation перед вызовом функции SetNtmsObjectInformation . Функция SetNtmsObjectInformation обновляет все доступные для записи элементы структуры NTMS_OBJECTINFORMATION , поэтому приложение отвечает за предоставление значений для всех записываемых элементов.

Ниже приведен список объектов, которым требуются специальные права доступа.

Объект Access
NTMS_CHANGER Требуется NTMS_USE_ACCESS в библиотеку.
NTMS_CHANGER_TYPE Требуется NTMS_USE_ACCESS на компьютер.
NTMS_COMPUTER Требуется NTMS_USE_ACCESS на компьютер.
NTMS_DRIVE Требуется NTMS_USE_ACCESS в библиотеку.
NTMS_DRIVE_TYPE Требуется NTMS_USE_ACCESS на компьютер.
NTMS_IEDOOR Требуется NTMS_USE_ACCESS в библиотеку.
NTMS_IEPORT Требуется NTMS_USE_ACCESS в библиотеку.
NTMS_LIBRARY Требуется NTMS_USE_ACCESS в библиотеку.
NTMS_LIBREQUEST Требуется NTMS_USE_ACCESS в библиотеку.
NTMS_LOGICAL_MEDIA Требуется NTMS_USE_ACCESS в пул носителей логического носителя.
NTMS_MEDIA_TYPE Требуется NTMS_USE_ACCESS на компьютер.
NTMS_OPREQUEST Требуется NTMS_USE_ACCESS на компьютер.
NTMS_PARTITION Требуется NTMS_USE_ACCESS в пул носителей на стороне.
NTMS_PHYSICAL_MEDIA Требуется NTMS_USE_ACCESS в пул носителей.
NTMS_STORAGESLOT Требуется NTMS_USE_ACCESS в библиотеку.
 

Примечание

Заголовок ntmsapi.h определяет GetNtmsObjectInformation в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

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

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

GetNtmsObjectSecurity

NTMS_OBJECTINFORMATION

Функции управления объектами

SetNtmsObjectInformation