Condividi tramite


Funzione PdhMakeCounterPathW (pdh.h)

Crea un percorso di contatore completo utilizzando i membri specificati nella struttura PDH_COUNTER_PATH_ELEMENTS.

Sintassi

PDH_FUNCTION PdhMakeCounterPathW(
  [in]      PPDH_COUNTER_PATH_ELEMENTS_W pCounterPathElements,
  [out]     LPWSTR                       szFullPathBuffer,
  [in, out] LPDWORD                      pcchBufferSize,
  [in]      DWORD                        dwFlags
);

Parametri

[in] pCounterPathElements

Struttura PDH_COUNTER_PATH_ELEMENTS che contiene i membri utilizzati per creare il percorso. Sono necessari solo i membri szObjectName e szCounterName, gli altri sono facoltativi.

Se il membro del nome dell'istanza è NULL, il percorso non conterrà un riferimento all'istanza e i membri szParentInstanceInstance e dwInstanceIndex membri verranno ignorati.

[out] szFullPathBuffer

Buffer allocato dal chiamante che riceve un percorso del contatore con terminazione null. La lunghezza massima di un percorso del contatore è PDH_MAX_COUNTER_PATH. Impostare su NULL se pcchBufferSize è zero.

[in, out] pcchBufferSize

Dimensioni del buffer di szFullPathBuffer , in TCHARs. Se zero in ingresso, la funzione restituisce PDH_MORE_DATA e imposta questo parametro sulla dimensione del buffer richiesta. Se il buffer è maggiore delle dimensioni necessarie, la funzione imposta questo parametro sulle dimensioni effettive del buffer utilizzato. Se la dimensione specificata per l'input è maggiore di zero ma minore della dimensione richiesta, non è consigliabile basarsi sulle dimensioni restituite per riallocare il buffer.

[in] dwFlags

Formato dei valori dei contatori di input e output. È possibile specificare uno dei valori seguenti.

Valore Significato
PDH_PATH_WBEM_RESULT
Converte un percorso PDH nel formato della classe WMI e del nome della proprietà.
PDH_PATH_WBEM_INPUT
Converte la classe WMI e il nome della proprietà in un percorso PDH.
0
Restituisce il percorso nel formato PDH, ad esempio \\computer\object(parent/instance#index)\counter.

Valore restituito

Se la funzione ha esito positivo, restituisce ERROR_SUCCESS.

Se la funzione ha esito negativo, il valore restituito è un codice di errore di sistema o un codice di errore PDH . Di seguito sono riportati i valori possibili.

Codice restituito Descrizione
PDH_MORE_DATA
Il buffer szFullPathBuffer è troppo piccolo per contenere il nome del contatore. Questo valore restituito è previsto se pcchBufferSize è zero all'input. Se la dimensione specificata per l'input è maggiore di zero ma minore della dimensione richiesta, non è consigliabile basarsi sulle dimensioni restituite per riallocare il buffer.
PDH_INVALID_ARGUMENT
Un parametro non è valido o non è formattato correttamente. Ad esempio, in alcune versioni è possibile ricevere questo errore se la dimensione specificata per l'input è maggiore di zero, ma minore della dimensione richiesta.

Osservazioni

È necessario chiamare questa funzione due volte, la prima volta per ottenere le dimensioni del buffer necessarie (impostare szFullPathBuffer su NULL e pcchBufferSize su 0) e la seconda volta per ottenere i dati.

Nota

L'intestazione pdh.h definisce PdhMakeCounterPath come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows XP [solo app desktop]
server minimo supportato Windows Server 2003 [solo app desktop]
piattaforma di destinazione Finestre
intestazione pdh.h
libreria Pdh.lib
dll Pdh.dll

Vedere anche

PDH_COUNTER_PATH_ELEMENTS

PdhParseCounterPath