IPort::GetDeviceProperty 메서드(portcls.h)
GetDeviceProperty 메서드는 플러그 앤 플레이 디바이스에 대한 레지스트리에 포함된 디바이스 속성에 대한 간단한 액세스를 제공합니다.
통사론
NTSTATUS GetDeviceProperty(
DEVICE_REGISTRY_PROPERTY DeviceProperty,
ULONG BufferLength,
PVOID PropertyBuffer,
PULONG ResultLength
);
매개 변수
DeviceProperty
호출자가 요청하는 특정 디바이스 속성을 식별합니다. 이 매개 변수의 유효한 값은 IoGetDeviceProperty 호출의 DeviceProperty 매개 변수에 대해 정의된 값과 동일합니다.
BufferLength
요청된 정보를 받을 버퍼의 길이(바이트)를 지정합니다.
PropertyBuffer
속성 버퍼에 대한 포인터입니다. 이 매개 변수는 메서드가 요청된 속성 정보를 쓰는 호출자 할당 버퍼를 가리킵니다. 버퍼는 BufferLength에 지정된 바이트 수를 포함할 만큼 커야 합니다.
ResultLength
반환된 데이터의 길이에 대한 출력 포인터입니다. 이 매개 변수는 호출자가 할당한 ULONG 변수를 가리키며, 메서드는 PropertyBuffer 버퍼에 실제로 기록된 바이트 수를 지정하는 개수를 씁니다. 그러나 버퍼가 너무 작아 정보를 포함할 수 없는 경우 메서드는 필요한 버퍼 크기를 출력합니다.
반환 값
이 메서드는 호출에 성공한 경우 STATUS_SUCCESS 포함하는 NTSTATUS를 반환합니다. 그렇지 않으면 메서드가 적절한 오류 코드를 반환합니다. 호출자가 제공하는 속성 버퍼가 너무 작으면 메서드는 STATUS_BUFFER_TOO_SMALL 반환하고 ReturnLength에서 필요한 크기를 출력합니다.
발언
이 메서드는 오디오 어댑터의 디바이스 속성을 검색합니다. PcGetDeviceProperty 함수와 비슷하지만, 디바이스 개체가 대상 디바이스를 명시적으로 지정하도록 요구하지 않고 오디오 어댑터의 디바이스 속성을 자동으로 검색한다는 점을 제외하면 다음과 같습니다.
요구 사항
요구 | 값 |
---|---|
헤더 | portcls.h |
IRQL | PASSIVE_LEVEL |