Função CM_Get_Class_Registry_PropertyA (cfgmgr32.h)

A função CM_Get_Class_Registry_Property recupera uma propriedade de classe de configuração de dispositivo.

Sintaxe

CMAPI CONFIGRET CM_Get_Class_Registry_PropertyA(
  [in]            LPGUID   ClassGuid,
  [in]            ULONG    ulProperty,
  [out, optional] PULONG   pulRegDataType,
  [out]           PVOID    Buffer,
  [in, out]       PULONG   pulLength,
  [in]            ULONG    ulFlags,
  [in, optional]  HMACHINE hMachine
);

Parâmetros

[in] ClassGuid

Um ponteiro para o GUID que representa a classe de configuração do dispositivo para a qual recuperar uma propriedade.

[in] ulProperty

Um valor do tipo ULONG que identifica a propriedade a ser recuperada. Esse valor deve ser um dos seguintes valores CM_CRP_Xxx definidos em Cfgmgr32.h:

CM_CRP_UPPERFILTERS

Representa uma lista de cadeias de caracteres do tipo REG_MULTI_SZ, em que cada cadeia de caracteres contém o nome de um driver de filtro de nível superior registrado para a classe .

CM_CRP_LOWERFILTERS

Representa uma lista de cadeias de caracteres do tipo REG_MULTI_SZ, em que cada cadeia de caracteres contém o nome de um drivers de filtro de nível inferior registrado para a classe .

CM_CRP_SECURITY

Representa um valor do tipo REG_BINARY que contém uma estrutura de comprimento variável, auto-relativo SECURITY_DESCRIPTOR .

CM_CRP_SECURITY_SDS

Representa uma cadeia de caracteres do tipo REG_SZ que contém um descritor de segurança no formato SDDL (Security Descriptor Definition Language).

CM_CRP_DEVTYPE

Representa um valor do tipo REG_DWORD que indica o tipo de dispositivo para a classe . Para obter mais informações, consulte Especificando tipos de dispositivo.

CM_CRP_EXCLUSIVE

Representa um valor do tipo REG_DWORD que indica se os usuários podem obter acesso exclusivo a dispositivos para essa classe. O valor retornado será 1 se o acesso exclusivo for permitido ou zero caso contrário.

CM_CRP_CHARACTERISTICS

Representa um valor do tipo DWORD que indica as características do dispositivo para a classe . Para obter uma lista de sinalizadores de características, consulte o parâmetro DeviceCharacteristics da rotina IoCreateDevice .

[out, optional] pulRegDataType

Um ponteiro para uma variável do tipo ULONG que recebe a constante REG_Xxx que representa o tipo de dados da propriedade solicitada. As constantes REG_Xxx são definidas em Winnt.h e são descritas no membro Type da estrutura KEY_VALUE_BASIC_INFORMATION . Esse parâmetro é opcional e pode ser definido como NULL.

[out] Buffer

Um ponteiro para um buffer que recebe os dados de propriedade solicitados. Para obter mais informações sobre esse parâmetro e o parâmetro de tamanho de buffer pulLength, consulte a seção Comentários a seguir.

[in, out] pulLength

Um ponteiro para a variável do tipo ULONG cujo valor, na entrada, é o tamanho, em bytes, do buffer fornecido pelo Buffer. No retorno, CM_Get_Class_Registry_Property define essa variável como o tamanho, em bytes, da propriedade solicitada.

[in] ulFlags

Reservado apenas para uso interno. Deve ser definido como zero.

[in, optional] hMachine

Um identificador para um computador remoto do qual recuperar a propriedade de classe de dispositivo especificada. Esse parâmetro é opcional e, se estiver definido como NULL, a propriedade será recuperada do computador local.

Retornar valor

Se a operação for bem-sucedida, CM_Get_Class_Registry_Property retornará CR_SUCCESS. Caso contrário, a função retornará um dos outros códigos CR_Xxx status definidos em Cfgmgr32.h.

Comentários

Para determinar o tamanho, em bytes, de uma propriedade antes de tentar recuperar a propriedade, primeiro chame CM_Get_Class_Registry_Property, fornecendo um ponteiro bufferNULL e um valor pulLength de zero. Em resposta a essa chamada, a função não recupera a propriedade , mas define pulLength como o tamanho da propriedade solicitada e retorna CR_BUFFER_SMALL. Depois de obter o tamanho da propriedade, chame CM_Get_Class_Registry_Property novamente, fornecendo um ponteiro buffer para o buffer para receber os dados da propriedade e fornecendo o tamanho da propriedade em *pulLength.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Microsoft Windows 2000 e versões posteriores do Windows.
Cabeçalho cfgmgr32.h (inclua Cfgmgr32.h)
Biblioteca Cfgmgr32.lib

Confira também

CM_Set_Class_Registry_Property
KEY_VALUE_BASIC_INFORMATION
SetupDiGetClassRegistryProperty
SetupDiSetClassRegistryProperty