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
对象 ID 或信息结构缺失,或者对象信息大小或对象类型无效。
ERROR_NOT_ENOUGH_MEMORY
处理过程中发生分配失败。
ERROR_OBJECT_NOT_FOUND
对象 ID 无效。
ERROR_SUCCESS
函数成功。

言论

在使用 GetNtmsObjectInformation 函数之前,必须在 lpInfo 参数中正确设置信息结构的信息大小和类型。

为了避免不可预知的结果,应用程序必须在 调用 setNtmsObjectInformation 函数之前调用 GetNtmsObjectInformation 函数。 SetNtmsObjectInformation 函数更新 NTMS_OBJECTINFORMATION 结构的所有可写成员,因此应用程序负责为所有可写成员提供值。

下面是需要特殊访问权限的对象列表。

对象 访问
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 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的 约定。

要求

要求 价值
最低支持的客户端 Windows XP [仅限桌面应用]
支持的最低服务器 Windows Server 2003 [仅限桌面应用]
目标平台 窗户
标头 ntmsapi.h
Ntmsapi.lib
DLL Ntmsapi.dll

另请参阅

GetNtmsObjectSecurity

NTMS_OBJECTINFORMATION

对象管理功能

SetNtmsObjectInformation