Compartilhar via


Verificando códigos de status de dados do contador

O valor retornado das funções PDH indica o êxito ou a falha da chamada de função, que é diferente da status dos dados do contador. Sempre marcar o membro CStatus de um valor de contador retornado nas estruturas PDH para garantir que os dados retornados sejam válidos antes de usá-los. Se o valor do membro CStatus não indicar êxito, não use os dados. Veja a seguir os possíveis valores de status para contadores:

Valor Significado
PDH_CSTATUS_NO_MACHINE O PDH não pôde se conectar ao computador especificado no caminho do contador. Se esse status for retornado quando o contador estiver sendo adicionado, o contador não será completamente inicializado. Sempre que a consulta é atualizada, o PDH tenta novamente a conexão. Quando a conexão é estabelecida, a coleta de dados normal é retomada.
PDH_CSTATUS_NO_OBJECT O computador especificado foi encontrado, mas o objeto de desempenho especificado foi encontrado no computador. Se esse status for retornado quando o contador estiver sendo adicionado, o contador especificado não será incluído na consulta. Se esse status for retornado por um contador ativo, os dados desse contador serão inválidos. Sempre que os dados são solicitados, o PDH tenta obter esses dados de contador.
PDH_CSTATUS_NO_INSTANCE A instância especificada não foi encontrada no objeto . Se esse status for retornado enquanto o contador estiver sendo adicionado à consulta, o contador será adicionado com êxito à consulta, mas nenhum dado estará disponível até que a instância específica seja exibida e um status bem-sucedido seja retornado.
PDH_CSTATUS_NO_COUNTER O contador especificado não foi encontrado no objeto especificado. Se esse status for retornado quando o contador estiver sendo adicionado, o contador não será adicionado à consulta. Se esse status for retornado após a coleta de dados, os dados desse contador serão inválidos. Sempre que os dados são solicitados, o PDH tenta obter esses dados de contador.
PDH_CSTATUS_INVALID_DATA O contador foi encontrado com êxito, mas os dados retornados não são válidos. Esse erro poderá ocorrer se o valor do contador for menor que o valor anterior. (Como os valores do contador sempre incrementam, o valor do contador passa para zero quando atinge seu valor máximo.) Outra causa possível é um temporizador do sistema que não está correto.
PDH_CSTATUS_VALID_DATA Os dados do contador foram retornados com êxito, mas não foram alterados da última vez em que o contador foi lido.
PDH_CSTATUS_NEW_DATA Os dados do contador foram retornados com êxito e são diferentes da última vez que o contador foi lido. PDH_CSTATUS_NEW_DATA pode ser retornado em um contador de taxa mesmo que a taxa resultante seja a mesma que a última amostra. Isso ocorre porque o valor de dados brutos usado na determinação desse valor de status foi alterado, não a taxa computada.
PDH_MORE_DATA O buffer fornecido não era grande o suficiente para armazenar todos os dados do contador. Aloque um buffer maior e execute a função novamente.
PDH_CSTATUS_ITEM_NOT_VALIDATED O contador foi adicionado à consulta, mas não foi validado nem acessado. Nenhuma informação de status adicional sobre esse contador está disponível.
PDH_CSTATUS_NO_COUNTERNAME Nenhum nome de contador foi especificado na consulta.
PDH_CSTATUS_NO_COUNTER Não foi possível encontrar o nome do contador especificado.
PDH_CSTATUS_NO_OBJECT Não foi possível encontrar o objeto de desempenho especificado.
PDH_CALC_NEGATIVE_DENOMINATOR Um contador tem um valor de denominador negativo.
PDH_CALC_NEGATIVE_TIMEBASE Um contador tem um valor de base de tempo negativo.
PDH_CALC_NEGATIVE_VALUE Um contador tem um valor negativo.
PDH_CSTATUS_NO_COUNTERNAME Nenhum caminho de contador foi especificado.
PDH_CSTATUS_BAD_COUNTERNAME O formato do caminho do contador está incorreto.