Condividi tramite


Funzione PdhParseInstanceNameA (pdh.h)

Analizza gli elementi di una stringa di istanza.

Sintassi

PDH_FUNCTION PdhParseInstanceNameA(
  [in]      LPCSTR  szInstanceString,
  [out]     LPSTR   szInstanceName,
  [in, out] LPDWORD pcchInstanceNameLength,
  [out]     LPSTR   szParentName,
  [in, out] LPDWORD pcchParentNameLength,
  [out]     LPDWORD lpIndex
);

Parametri

[in] szInstanceString

stringa nullcon terminazione che specifica la stringa di istanza da analizzare in singoli componenti. Questa stringa può contenere i formati seguenti ed è minore di MAX_PATH caratteri di lunghezza:

  • istanza
  • instance#index
  • padre/istanza
  • parent/instance#index

[out] szInstanceName

Buffer allocato dal chiamante che riceve il nullnome dell'istanza con terminazione. Impostare su NULL se pcchInstanceNameLength è zero.

[in, out] pcchInstanceNameLength

Dimensioni del buffer di szInstanceName, 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.

[out] szParentName

Buffer allocato dal chiamante che riceve il null-terminato nome dell'istanza padre, se specificato. Impostare su NULL se pcchParentNameLength è zero.

[in, out] pcchParentNameLength

Dimensioni del buffer di szParentName , in TCHAR. 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.

[out] lpIndex

Valore di indice dell'istanza. Se una voce di indice non è presente nella stringa, questo valore è zero. Questo parametro può essere NULL.

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_INVALID_ARGUMENT
Parametro non valido. Ad esempio, in alcune versioni è possibile ricevere questo errore se la dimensione specificata per l'input è maggiore di zero, ma minore della dimensione richiesta.
PDH_MORE_DATA
Uno o entrambi i buffer stringa sono troppo piccoli per contenere i dati. Questo valore restituito è previsto se il buffer delle dimensioni corrispondente è 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_INSTANCE
La stringa di istanza non è formattata correttamente, supera MAX_PATH caratteri di lunghezza o non può essere analizzata.

Osservazioni

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

Nota

L'intestazione pdh.h definisce PdhParseInstanceName 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

PdhMakeCounterPath