Función PcGetDeviceProperty (portcls.h)
La función PcGetDeviceProperty devuelve la propiedad de dispositivo solicitada del registro.
Sintaxis
PORTCLASSAPI NTSTATUS PcGetDeviceProperty(
[in] PVOID DeviceObject,
[in] DEVICE_REGISTRY_PROPERTY DeviceProperty,
[in] ULONG BufferLength,
[out] PVOID PropertyBuffer,
[out] PULONG ResultLength
);
Parámetros
[in] DeviceObject
Puntero al objeto de dispositivo para el dispositivo. Este parámetro apunta a una estructura del sistema DEVICE_OBJECT, pero se convierte al tipo PVOID.
[in] DeviceProperty
Enumerador con tipo DEVICE_REGISTRY_PROPERTYque identifica la propiedad del dispositivo que se va a recuperar.
[in] BufferLength
Especifica la longitud en bytes del búfer que va a recibir los datos de propiedad solicitados.
[out] PropertyBuffer
Puntero a un búfer asignado por el autor de la llamada en el que el método es escribir los datos de propiedad solicitados. El búfer debe ser lo suficientemente grande como para contener el número de bytes especificados en BufferLength.
[out] ResultLength
Puntero a una variable asignada por el autor de la llamada en la que el método genera un recuento que especifica el número de bytes que se escriben realmente en el búfer. Si el tamaño del búfer especificado en bufferLength es demasiado pequeño para contener los datos de propiedad, el método genera el número de bytes necesarios para los datos de propiedad y devuelve STATUS_BUFFER_TOO_SMALL.
Valor devuelto
pcGetDeviceProperty devuelve STATUS_SUCCESS si la llamada se realizó correctamente. De lo contrario, devuelve un código de error adecuado. La rutina devuelve STATUS_BUFFER_TOO_SMALL si el tamaño del búfer especificado en bufferLength no era lo suficientemente grande como para contener los datos de propiedad solicitados.
Observaciones
Es posible que sea necesario realizar dos llamadas a PcGetDeviceProperty para determinar el bufferLength necesario. En la primera llamada, bufferLength puede ser cero o una estimación más adecuada del tamaño de búfer necesario. Si el estado de devolución es STATUS_BUFFER_TOO_SMALL, significa que el autor de la llamada debe asignar un búfer del tamaño que se produjo a través de ResultLength y llamar a PcGetDeviceProperty de nuevo.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | El controlador del sistema PortCls implementa la función PcGetDeviceProperty en Microsoft Windows 98/Me y en los sistemas operativos Windows 2000 y versiones posteriores. |
de la plataforma de destino de | Universal |
encabezado de | portcls.h (incluya Portcls.h) |
biblioteca de | Portcls.lib |
irQL | PASSIVE_LEVEL |