Compartilhar via


Função PdhGetDefaultPerfCounterA (pdh.h)

Recupera o nome do contador padrão para o objeto especificado. Esse nome pode ser usado para definir a seleção inicial do contador na caixa de diálogo Procurar Contador.

Para usar identificadores para fontes de dados, use a função PdhGetDefaultPerfCounterH .

Sintaxe

PDH_FUNCTION PdhGetDefaultPerfCounterA(
  [in]      LPCSTR  szDataSource,
  [in]      LPCSTR  szMachineName,
  [in]      LPCSTR  szObjectName,
  [out]     LPSTR   szDefaultCounterName,
  [in, out] LPDWORD pcchBufferSize
);

Parâmetros

[in] szDataSource

Deve ser NULL.

Se você especificar um arquivo de log, szDefaultCounterName será uma cadeia de caracteres nula .

[in] szMachineName

Cadeia de caracteres terminada em nulo que especifica o nome do computador usado para verificar o nome do objeto. Se FOR NULL, o computador local será usado para verificar o nome do objeto.

[in] szObjectName

Cadeia de caracteres terminada em nulo que especifica o nome do objeto cujo nome de contador padrão você deseja recuperar.

[out] szDefaultCounterName

Buffer alocado pelo chamador que recebe o nome do contador padrão terminado em nulo. Defina como NULL se pcchBufferSize for zero.

[in, out] pcchBufferSize

Tamanho do buffer szDefaultCounterName , em TCHARs. Se zero na entrada, a função retornará PDH_MORE_DATA e definirá esse parâmetro como o tamanho do buffer necessário. Se o buffer for maior que o tamanho necessário, a função definirá esse parâmetro como o tamanho real do buffer que foi usado. Se o tamanho especificado na entrada for maior que zero, mas menor que o tamanho necessário, você não deverá depender do tamanho retornado para realocar o buffer.

Retornar valor

Se a função for bem-sucedida, ela retornará ERROR_SUCCESS.

Se a função falhar, o valor retornado será um código de erro do sistema ou um código de erro PDH. Veja a seguir os valores possíveis.

Código de retorno Descrição
PDH_MORE_DATA
O buffer szDefaultCounterName é muito pequeno para conter o nome do contador. Esse valor retornado será esperado se pcchBufferSize for zero na entrada. Se o tamanho especificado na entrada for maior que zero, mas menor que o tamanho necessário, você não deverá depender do tamanho retornado para realocar o buffer.
PDH_INVALID_ARGUMENT
Um parâmetro obrigatório não é válido. Por exemplo, em algumas versões, você poderá receber esse erro se o tamanho especificado na entrada for maior que zero, mas menor que o tamanho necessário.
PDH_MEMORY_ALLOCATION_FAILURE
Não é possível alocar memória para concluir a função.
PDH_CSTATUS_NO_MACHINE
O computador especificado está offline ou indisponível.
PDH_CSTATUS_NO_COUNTERNAME
O nome do contador padrão não pode ser lido ou encontrado.
PDH_CSTATUS_NO_OBJECT
Não foi possível encontrar o objeto especificado.
PDH_CSTATUS_NO_COUNTER
O objeto não especificou um contador padrão.

Comentários

Você deve chamar essa função duas vezes, a primeira vez para obter o tamanho do buffer necessário (defina szDefaultCounterName como NULL e pcchBufferSize como 0) e a segunda vez para obter os dados.

Observação

O cabeçalho pdh.h define PdhGetDefaultPerfCounter como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho pdh.h
Biblioteca Pdh.lib
DLL Pdh.dll

Confira também

PdhGetDefaultPerfCounterH

PdhGetDefaultPerfObject