Função QOSQueryFlow (qos2.h)
A função QOSQueryFlow solicita informações sobre um fluxo específico adicionado ao subsistema QoS. Essa função pode ser chamada de forma assíncrona.
Sintaxe
ExternC BOOL QOSQueryFlow(
[in] HANDLE QOSHandle,
[in] QOS_FLOWID FlowId,
[in] QOS_QUERY_FLOW Operation,
[in, out] PULONG Size,
[out] PVOID Buffer,
[in, optional] DWORD Flags,
[out, optional] LPOVERLAPPED Overlapped
);
Parâmetros
[in] QOSHandle
Identificador para o subsistema QOS retornado por QOSCreateHandle.
[in] FlowId
Especifica um identificador de fluxo. Um QOS_FLOWID é um inteiro sem sinal de 32 bits.
[in] Operation
Especifica qual tipo de informação de fluxo está sendo consultada. Esse parâmetro especifica qual estrutura o Buffer conterá.
Valor | Significado |
---|---|
|
O buffer conterá uma estrutura QOS_FLOW_FUNDAMENTALS . |
|
O buffer conterá uma estrutura QOS_PACKET_PRIORITY . |
|
O buffer conterá um valor UINT64 que indica a taxa de fluxo especificada ao solicitar o contrato, em bits por segundo. |
[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 para 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 a estrutura especificada pelo valor do parâmetro Operation .
[in, optional] Flags
Sinalizadores relativos aos dados que estão sendo retornados.
[out, optional] Overlapped
Ponteiro para uma estrutura OVERLAPPED usada para saída assíncrona. Isso deverá ser definido como NULL se essa função não estiver sendo chamada de forma assíncrona.
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 |
---|---|
|
O subsistema QoS está configurado atualmente pela política para não permitir essa operação no caminho de rede entre esse host e o host de destino. Por exemplo, a política padrão impede que experimentos qWAVE sejam executados para destinos fora do link. |
|
A solicitação para o subsistema QOS atingiu o tempo limite antes que informações úteis suficientes pudessem ser coletadas. |
|
O comprimento do buffer conforme especificado pelo parâmetro Size não é suficiente para os dados consultados. O parâmetro Size agora contém o tamanho mínimo necessário. |
|
O parâmetro QOSHandle é inválido. |
|
O parâmetro FlowId ou o tamanho do buffer é insuficiente. |
|
FlowId inválido especificado. |
|
Indica que uma alocação de memória falhou. |
|
A operação que está sendo executada requer informações que o subsistema QoS não tem. Atualmente, não há suporte para a obtenção dessas informações nesta rede. Por exemplo, as estimativas de largura de banda não podem ser obtidas em um caminho de rede em que o host de destino está fora do link. |
|
Não há recursos suficientes para executar a operação. |
|
Não foi possível executar a solicitação devido a um erro de dispositivo de E/S. |
|
Indica que a solicitação de fluxo de atualização foi iniciada com êxito. |
|
O dispositivo indicado exige a reinicialização devido a erros de hardware. O aplicativo deve limpo e chamar QOSCreateHandle novamente. |
|
Ocorreu um erro de hardware do adaptador de rede. |
|
Não é possível acessar o local de rede. |
|
O não é um dado válido a ser retornado. |
|
Atualmente, não há dados suficientes sobre as condições de rede para responder à consulta. Normalmente, esse é um estado transitório em que o qWAVE errou por precaução, pois aguarda mais dados antes de verificar o estado da rede. |
Requisitos
Requisito | Valor |
---|---|
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 |