Compartilhar via


Função PcGetDeviceProperty (portcls.h)

A função PcGetDeviceProperty retorna a propriedade de dispositivo solicitada do registro.

Sintaxe

PORTCLASSAPI NTSTATUS PcGetDeviceProperty(
  [in]  PVOID                    DeviceObject,
  [in]  DEVICE_REGISTRY_PROPERTY DeviceProperty,
  [in]  ULONG                    BufferLength,
  [out] PVOID                    PropertyBuffer,
  [out] PULONG                   ResultLength
);

Parâmetros

[in] DeviceObject

Ponteiro para o objeto do dispositivo. Esse parâmetro aponta para uma estrutura do sistema DEVICE_OBJECT, mas é convertido para digitar PVOID.

[in] DeviceProperty

Um enumerador DEVICE_REGISTRY_PROPERTYdigitado que identifica a propriedade do dispositivo a ser recuperada.

[in] BufferLength

Especifica o comprimento em bytes do buffer que deve receber os dados de propriedade solicitados.

[out] PropertyBuffer

Ponteiro para um buffer alocado pelo chamador no qual o método deve gravar os dados de propriedade solicitados. O buffer deve ser grande o suficiente para conter o número de bytes especificado em bufferLength.

[out] ResultLength

Ponteiro para uma variável alocada por chamador na qual o método gera uma contagem especificando o número de bytes realmente gravados no buffer. Se o tamanho do buffer especificado em BufferLength for muito pequeno para manter os dados da propriedade, o método gerará o número de bytes necessários para os dados da propriedade e retornará STATUS_BUFFER_TOO_SMALL.

Valor de retorno

PcGetDeviceProperty retornará STATUS_SUCCESS se a chamada tiver sido bem-sucedida. Caso contrário, ele retornará um código de erro apropriado. A rotina retornará STATUS_BUFFER_TOO_SMALL se o tamanho do buffer especificado em bufferLength não for grande o suficiente para conter os dados de propriedade solicitados.

Observações

Duas chamadas para PcGetDeviceProperty podem ser necessárias para determinar o BufferLengthnecessário. Na primeira chamada, bufferLength pode ser zero ou uma estimativa recomendada do tamanho do buffer necessário. Se o status de retorno for STATUS_BUFFER_TOO_SMALL, isso significa que o chamador deverá alocar um buffer do tamanho que foi gerado por ResultLength e chamar PcGetDeviceProperty novamente.

Requisitos

Requisito Valor
de cliente com suporte mínimo O driver do sistema PortCls implementa a função PcGetDeviceProperty no Microsoft Windows 98/Me e no Windows 2000 e em sistemas operacionais posteriores.
da Plataforma de Destino Universal
cabeçalho portcls.h (inclua Portcls.h)
biblioteca Portcls.lib
IRQL PASSIVE_LEVEL

Consulte também

DEVICE_OBJECT

IoGetDeviceProperty