QOSEnumerateFlows 함수(qos2.h)
QOSEnumerateFlows 함수는 모든 기존 흐름을 열거합니다.
구문
ExternC BOOL QOSEnumerateFlows(
[in] HANDLE QOSHandle,
[in, out] PULONG Size,
[out] PVOID Buffer
);
매개 변수
[in] QOSHandle
QOSCreateHandle에서 반환된 QOS 하위 시스템에 대한 핸들입니다.
[in, out] Size
Buffer 매개 변수의 크기를 바이트 단위로 나타냅니다.
함수 반환에 성공하면 이 매개 변수는 버퍼에 복사된 바이트 수를 지정합니다.
이 호출이 ERROR_INSUFFICIENT_BUFFER 실패하면 이 작업을 성공적으로 완료하기 위해 이 매개 변수는 필요한 최소 버퍼 크기를 나타냅니다.
[out] Buffer
QOS_FlowId 흐름 식별자 배열에 대한 포인터입니다. QOS_FlowId 부호 없는 32비트 정수입니다.
반환 값
함수가 성공하면 반환 값이 0이 아닙니다.
함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다. 몇 가지 가능한 오류 코드는 다음과 같습니다.
반환 코드 | 설명 |
---|---|
|
QOSHandle 매개 변수가 잘못되었습니다. |
|
버퍼가 너무 작습니다. 출력에서 Size 에는 필요한 최소 버퍼 크기가 포함됩니다. 그런 다음 지정된 크기의 버퍼를 사용하여 이 함수를 다시 호출해야 합니다. |
|
DestAddr 매개 변수가 잘못되었습니다. |
|
메모리 할당이 실패했음을 나타냅니다. |
|
작업을 수행할 리소스가 부족합니다. |
|
I/O 디바이스 오류 때문에 요청을 수행할 수 없는 경우 |
|
하드웨어 오류로 인해 표시된 디바이스를 다시 초기화해야 합니다. 애플리케이션은 클린 QOSCreateHandle을 다시 호출해야 합니다. |
설명
이 함수를 성공적으로 호출하려면 관리 권한이 필요합니다.
QOSEnumerateFlows 함수를 호출하면 QOS 하위 시스템에 현재 활성화된 QOS_FlowId목록이 검색됩니다. 이러한 QOS_FlowId개별 흐름에 대한 자세한 정보를 얻기 위해 QOSQueryFlow 함수를 호출하는 데 사용할 수 있습니다.
이 함수에는 두 번 호출 의미 체계가 있습니다. 먼저 를 호출하여 버퍼 크기를 가져옵니다. 그런 다음( 첫 번째 호출이 ERROR_INSUFFICIENT_BUFFER 실패한 경우 적절한 크기의 버퍼를 사용하여) 를 다시 호출하여 흐름 목록을 검색합니다. 첫 번째 호출 이후 새 흐름이 추가된 경우 ERROR_INSUFFICIENT_BUFFER 두 번째 호출이 다시 실패할 수 있습니다.
다른 프로세스의 흐름은 수정할 수 없습니다.
요구 사항
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | qos2.h(Qos2.h 포함) |
라이브러리 | Qwave.lib |
DLL | Qwave.dll |