NTMS_OBJECTINFORMATIONA 结构 (ntmsapi.h)

[从 Windows 7 和 Windows Server 2008 R2 起,可移动存储管理器 不再可用。]

NTMS_OBJECTINFORMATION结构定义应用程序可为 RSM 设备、媒体和系统控件 ((如库、驱动器、媒体、操作员请求) )获取和设置的属性。 这是 RSM 数据库中对象的常见结构。

语法

typedef struct _NTMS_OBJECTINFORMATIONA {
  DWORD      dwSize;
  DWORD      dwType;
  SYSTEMTIME Created;
  SYSTEMTIME Modified;
  NTMS_GUID  ObjectGuid;
  BOOL       Enabled;
  DWORD      dwOperationalState;
  CHAR       szName[NTMS_OBJECTNAME_LENGTH];
  CHAR       szDescription[NTMS_DESCRIPTION_LENGTH];
#if ...
  union {
    NTMS_DRIVEINFORMATIONA       Drive;
    NTMS_DRIVETYPEINFORMATIONA   DriveType;
    NTMS_LIBRARYINFORMATION      Library;
    NTMS_CHANGERINFORMATIONA     Changer;
    NTMS_CHANGERTYPEINFORMATIONA ChangerType;
    NTMS_STORAGESLOTINFORMATION  StorageSlot;
    NTMS_IEDOORINFORMATION       IEDoor;
    NTMS_IEPORTINFORMATION       IEPort;
    NTMS_PMIDINFORMATIONA        PhysicalMedia;
    NTMS_LMIDINFORMATION         LogicalMedia;
    NTMS_PARTITIONINFORMATIONA   Partition;
    NTMS_MEDIAPOOLINFORMATION    MediaPool;
    NTMS_MEDIATYPEINFORMATION    MediaType;
    NTMS_LIBREQUESTINFORMATIONA  LibRequest;
    NTMS_OPREQUESTINFORMATIONA   OpRequest;
    NTMS_COMPUTERINFORMATION     Computer;
  } Info;
#else
  union {
    NTMS_DRIVEINFORMATIONA       Drive;
    NTMS_DRIVETYPEINFORMATIONA   DriveType;
    NTMS_LIBRARYINFORMATION      Library;
    NTMS_CHANGERINFORMATIONA     Changer;
    NTMS_CHANGERTYPEINFORMATIONA ChangerType;
    NTMS_STORAGESLOTINFORMATION  StorageSlot;
    NTMS_IEDOORINFORMATION       IEDoor;
    NTMS_IEPORTINFORMATION       IEPort;
    NTMS_PMIDINFORMATIONA        PhysicalMedia;
    NTMS_LMIDINFORMATION         LogicalMedia;
    NTMS_PARTITIONINFORMATIONA   Partition;
    NTMS_MEDIAPOOLINFORMATION    MediaPool;
    NTMS_MEDIATYPEINFORMATION    MediaType;
    NTMS_LIBREQUESTINFORMATIONA  LibRequest;
    NTMS_OPREQUESTINFORMATIONA   OpRequest;
    NTMS_COMPUTERINFORMATION     Computer;
  } Info;
#endif
} NTMS_OBJECTINFORMATIONA, *LPNTMS_OBJECTINFORMATIONA;

成员

dwSize

类型:DWORD

信息结构的大小(以字节为单位)。 在使用 GetNtmsObjectInformation 函数或 SetNtmsObjectInformation 函数之前,必须将此成员设置为结构的正确大小。

dwType

类型:DWORD

要获取/设置其信息的设备或系统控件的类型。 此成员必须设置为以下值之一。

含义
NTMS_CHANGER
changer 对象表示库单元的机器人元素。 Info 成员是指向NTMS_CHANGERINFORMATION结构的指针。
NTMS_CHANGER_TYPE
为附加到系统的每个唯一变更器设备类型创建一个变更器类型对象。 Info 成员是指向NTMS_CHANGERTYPEINFORMATION结构的指针。
NTMS_COMPUTER
当前计算机对象。 计算机对象没有结构。 Info 成员是指向NTMS_COMPUTERINFORMATION结构的指针。
NTMS_DRIVE
驱动器对象表示磁带驱动器或磁盘驱动器。 Info 成员是指向NTMS_DRIVEINFORMATION结构的指针。
NTMS_DRIVE_TYPE
为附加到系统的每个唯一驱动器设备类型创建驱动器类型对象。 Info 成员是指向NTMS_DRIVETYPEINFORMATION结构的指针。
NTMS_IEDOOR
NTMS_IEDOOR 对象表示库单元的门访问机制。 Info 成员是指向NTMS_IEDOORINFORMATION结构的指针。
NTMS_IEPORT
NTMS_IEPORT 对象表示库单元的插入/弹出端口。 Info 成员是指向NTMS_IEPORTINFORMATION结构的指针。
NTMS_LIBRARY
库对象表示联机或脱机库。 Info 成员是指向NTMS_LIBRARYINFORMATION结构的指针。
NTMS_LIBREQUEST
为库执行操作的每个请求创建一个库请求对象。 库请求的列表由 RSM 作为要执行的工作队列进行维护。 Info 成员是指向NTMS_LIBREQUESTINFORMATION结构的指针。
NTMS_LOGICAL_MEDIA
应用程序用于访问指定介质的主句柄。 对于多面介质,每一侧都被视为一个单独的物理介质。 Info 成员是指向NTMS_LMIDINFORMATION结构的指针。
NTMS_MEDIA_POOL
媒体池是媒体的逻辑分组。 媒体池中的所有媒体都必须是相同的媒体类型。 Info 成员是指向NTMS_MEDIAPOOLINFORMATION结构的指针。
NTMS_MEDIA_TYPE
为系统中每个唯一的媒体类型创建一个媒体类型对象。 Info 成员是指向NTMS_MEDIATYPEINFORMATION结构的指针。
NTMS_OPREQUEST
运算符请求对象表示用户获取信息的 RSM 请求。 Info 成员是指向NTMS_OPREQUESTINFORMATION结构的指针。
NTMS_PARTITION
侧对象表示物理介质的一侧。 Info 成员是指向NTMS_PARTITIONINFORMATION结构的指针。
NTMS_PHYSICAL_MEDIA
物理媒体对象表示磁带或可移动磁盘。 一块物理介质可以包含一个或多个侧。 Info 成员是指向NTMS_PMIDINFORMATION结构的指针。
NTMS_STORAGESLOT
存储槽对象表示可在库中保存指定介质的槽之一。 Info 成员是指向NTMS_STORAGESLOTINFORMATION结构的指针。

Created

类型: SYSTEMTIME

创建对象的日期/时间戳。

Modified

类型: SYSTEMTIME

修改对象的日期/时间戳。

ObjectGuid

类型: NTMS_GUID

对象的 GUID。

Enabled

类型: BOOL

指示是否启用设备或系统控件对象。

dwOperationalState

类型:DWORD

定义 对象的当前操作状态。 这可以是以下值之一。

含义
NTMS_NOT_PRESENT
此设备或对象当前不存在。
NTMS_READY
此设备或对象可用且准备就绪。
NTMS_NEEDS_SERVICE
此设备或对象已失败,需要服务。

szName[NTMS_OBJECTNAME_LENGTH]

类型: TCHAR[NTMS_OBJECTNAME_LENGTH]

媒体、设备或系统控件对象的名称。 可以使用 SetNtmsObjectInformation 函数更改媒体池和逻辑媒体名称。 所有其他对象名称都是只读的。

szDescription[NTMS_DESCRIPTION_LENGTH]

类型: TCHAR[NTMS_DESCRIPTION_LENGTH]

设备或系统控件对象的说明。 可以使用 SetNtmsObjectInformation 函数更改设备和系统控制对象的说明。 ) 的所有对象 (可写

Info

设备或系统控件对象特定的信息。 此信息的格式取决于 dwType 成员。

Info.Drive

类型: NTMS_DRIVEINFORMATION 如果 dwTypeNTMS_DRIVE,则使用此格式。

Info.DriveType

类型: NTMS_DRIVETYPEINFORMATION 如果 dwTypeNTMS_DRIVE_TYPE,则使用此格式。

Info.Library

类型: NTMS_LIBRARYINFORMATION 如果 dwTypeNTMS_LIBRARY,则使用此格式。

Info.Changer

类型: NTMS_CHANGERINFORMATION 如果 dwTypeNTMS_CHANGER,则使用此格式。

Info.ChangerType

类型: NTMS_CHANGERTYPEINFORMATION 如果 dwTypeNTMS_CHANGER_TYPE,则使用此格式。

Info.StorageSlot

类型: NTMS_STORAGESLOTINFORMATION 如果 dwTypeNTMS_STORAGESLOT,则使用此格式。

Info.IEDoor

类型: NTMS_IEDOORINFORMATION 如果 dwTypeNTMS_IEDOOR,则使用此格式。

Info.IEPort

类型: NTMS_IEPORTINFORMATION 如果 dwTypeNTMS_IEPORT,则使用此格式。

Info.PhysicalMedia

类型: NTMS_PMIDINFORMATION 如果 dwTypeNTMS_PHYSICAL_MEDIA,则使用此格式。

Info.LogicalMedia

类型: NTMS_LMIDINFORMATION 如果 dwTypeNTMS_LOGICAL_MEDIA,则使用此格式。

Info.Partition

类型: NTMS_PARTITIONINFORMATION 如果 dwTypeNTMS_PARTITION,则使用此格式。

Info.MediaPool

类型: NTMS_MEDIAPOOLINFORMATION 如果 dwTypeNTMS_MEDIA_POOL,则使用此格式。

Info.MediaType

类型: NTMS_MEDIATYPEINFORMATION 如果 dwTypeNTMS_MEDIA_TYPE,则使用此格式。

Info.LibRequest

类型: NTMS_LIBREQUESTINFORMATION 如果 dwTypeNTMS_LIBREQUEST,则使用此格式。

Info.OpRequest

类型: NTMS_OPREQUESTINFORMATION 如果 dwTypeNTMS_OPREQUEST,则使用此格式。

Info.Computer

注解

除非在成员的定义中指定为 WRITABLE, 否则 NTMS_OBJECTINFORMATION 结构的所有成员在 RSM 函数级别都是只读的。

注意

ntmsapi.h 标头将 NTMS_OBJECTINFORMATION 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名的使用与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 ntmsapi.h

另请参阅

GetNtmsObjectInformation

SetNtmsObjectInformation