Compartilhar via


Função QOSEnumerateFlows (qos2.h)

A função QOSEnumerateFlows enumera todos os fluxos existentes.

Sintaxe

ExternC BOOL QOSEnumerateFlows(
  [in]      HANDLE QOSHandle,
  [in, out] PULONG Size,
  [out]     PVOID  Buffer
);

Parâmetros

[in] QOSHandle

Manipule para o subsistema QOS retornado por QOSCreateHandle.

[in, out] Size

Indica o tamanho do parâmetro Buffer , em bytes.

No retorno da função, se bem-sucedido, esse parâmetro especificará o número de bytes copiados no Buffer.

Se essa chamada falhar com ERROR_INSUFFICIENT_BUFFER, esse parâmetro indicará o tamanho mínimo necessário do Buffer para concluir essa operação com êxito.

[out] Buffer

Ponteiro para uma matriz de identificadores de fluxo de QOS_FlowId . Um QOS_FlowId é um inteiro sem sinal de 32 bits.

Valor retornado

Se a função for bem-sucedida, o valor retornado será diferente de zero.

Se a função falhar, o valor retornado será 0. Para obter informações de erro estendidas, chame GetLastError. Alguns códigos de erro possíveis seguem.

Código de retorno Descrição
ERROR_INVALID_HANDLE
O parâmetro QOSHandle é inválido.
ERROR_INSUFFICIENT_BUFFER
O buffer é muito pequeno. Na saída, Size conterá o tamanho mínimo do buffer necessário. Essa função deve ser chamada novamente com um buffer do tamanho indicado.
ERROR_INVALID_PARAMETER
O parâmetro DestAddr é inválido.
ERROR_NOT_ENOUGH_MEMORY
Indica que uma alocação de memória falhou.
ERROR_NO_SYSTEM_RESOURCES
Não há recursos suficientes para executar a operação.
ERROR_IO_DEVICE
Não foi possível executar a solicitação devido a um erro de dispositivo de E/S.
ERROR_DEVICE_REINITIALIZATION_NEEDED
O dispositivo indicado exige a reinicialização devido a erros de hardware. O aplicativo deve limpo e chamar QOSCreateHandle novamente.

Comentários

Chamar essa função com êxito requer privilégios administrativos

Chamar a função QOSEnumerateFlows recupera uma lista de QOS_FlowIdestá ativa no momento no subsistema QOS. Esses QOS_FlowIdpodem ser usados para chamar a função QOSQueryFlow para obter mais informações sobre fluxos individuais.

Essa função tem semântica de chamada duas vezes. Primeiro chame para obter o tamanho do buffer e chame novamente (com um Buffer de tamanho apropriado se a primeira chamada falhar com ERROR_INSUFFICIENT_BUFFER) para recuperar a lista de fluxos. A segunda chamada poderá falhar novamente com ERROR_INSUFFICIENT_BUFFER se novos fluxos forem adicionados desde a primeira chamada.

Fluxos de outro processo não podem ser modificados.

Requisitos

   
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho qos2.h (inclua Qos2.h)
Biblioteca Qwave.lib
DLL Qwave.dll

Confira também

Experiência de áudio/vídeo do Windows de qualidade (qWAVE)