Compartilhar via


Função GetNtmsObjectAttributeA (ntmsapi.h)

[Gerenciador de Armazenamento Removível não está mais disponível a partir do Windows 7 e do Windows Server 2008 R2.]

A função GetNtmsObjectAttribute recupera o atributo estendido (dados privados nomeados) do objeto RSM especificado.

Sintaxe

DWORD GetNtmsObjectAttributeA(
  [in]      HANDLE      hSession,
  [in]      LPNTMS_GUID lpObjectId,
  [in]      DWORD       dwType,
  [in]      LPCSTR      lpAttributeName,
  [out]     LPVOID      lpAttributeData,
  [in, out] LPDWORD     lpAttributeSize
);

Parâmetros

[in] hSession

Manipule para a sessão retornada pela função OpenNtmsSession.

[in] lpObjectId

Identificador exclusivo do objeto do qual recuperar os dados.

[in] dwType

Tipo de objeto RSM. Para obter uma lista de tipos de objeto, consulte NtmsObjectsTypes.

[in] lpAttributeName

Nome do atributo estendido cujos dados devem ser recuperados.

[out] lpAttributeData

Ponteiro para o buffer que recebe os dados.

[in, out] lpAttributeSize

Tamanho do buffer de dados na entrada, em bytes. Na saída, o tamanho real dos dados, em bytes.

Valor de retorno

Essa função retorna um dos valores a seguir.

Valor Significado
ERROR_ACCESS_DENIED
NTMS_USE_ACCESS para o objeto ou seu contêiner é negado. Outros erros de segurança também são possíveis, mas indicam um erro de subsistema de segurança.

Windows XP: Não são necessários direitos de acesso.

ERROR_DATABASE_FAILURE
Falha na consulta ou atualização do banco de dados.
ERROR_INSUFFICIENT_BUFFER
O tamanho do buffer não está especificado corretamente. O tamanho correto é retornado no parâmetro lpAttributeSize.
ERROR_INVALID_HANDLE
O valor especificado no parâmetro hSession é NULL ou não é válido.
ERROR_INVALID_PARAMETER
O ponteiro é NULL ou não é válido.
ERROR_NOT_CONNECTED
Não é possível se conectar ao serviço RSM.
ERROR_OBJECT_NOT_FOUND
O atributo especificado não foi encontrado.
ERROR_SUCCESS
A função foi bem-sucedida.

Observações

A função GetNtmsObjectAttribute deve ser executada no servidor RSM. Como o buffer de bytes não é modificado entre sistemas de arquiteturas diferentes, a execução remota dessa função pode resultar em resultados imprevisíveis.

Veja a seguir a lista de objetos que exigem direitos especiais de acesso.

Objeto Acesso
NTMS_CHANGER Requer NTMS_USE_ACCESS à biblioteca.
NTMS_CHANGER_TYPE Requer NTMS_USE_ACCESS para o computador.
NTMS_COMPUTER Requer NTMS_USE_ACCESS para o computador.
NTMS_DRIVE Requer NTMS_USE_ACCESS à biblioteca.
NTMS_DRIVE_TYPE Requer NTMS_USE_ACCESS para o computador.
NTMS_IEDOOR Requer NTMS_USE_ACCESS à biblioteca.
NTMS_IEPORT Requer NTMS_USE_ACCESS à biblioteca.
NTMS_LIBRARY Requer NTMS_USE_ACCESS à biblioteca.
NTMS_LIBREQUEST Requer NTMS_USE_ACCESS à biblioteca.
NTMS_LOGICAL_MEDIA Requer NTMS_USE_ACCESS ao pool de mídia da mídia lógica.
NTMS_MEDIA_POOL Requer NTMS_USE_ACCESS ao pool de mídia.
NTMS_MEDIA_TYPE Requer NTMS_USE_ACCESS para o computador.
NTMS_OPREQUEST Requer NTMS_USE_ACCESS para o computador.
NTMS_PARTITION Requer NTMS_USE_ACCESS ao pool de mídia do lado.
NTMS_PHYSICAL_MEDIA Requer NTMS_USE_ACCESS ao pool de mídia.
NTMS_STORAGESLOT Requer NTMS_USE_ACCESS à biblioteca.
 

Nota

O cabeçalho ntmsapi.h define GetNtmsObjectAttribute como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows XP [somente aplicativos da área de trabalho]
servidor com suporte mínimo Windows Server 2003 [somente aplicativos da área de trabalho]
da Plataforma de Destino Windows
cabeçalho ntmsapi.h
biblioteca Ntmsapi.lib
de DLL Ntmsapi.dll

Consulte também

EnumerateNtmsObject

Funções de gerenciamento de objetos

SetNtmsObjectAttribute