Metodo CHString::GetBuffer (chstring.h)

[La classe CHString fa parte di WMI Provider Framework, che viene ora considerata in stato finale e non saranno disponibili ulteriori sviluppi, miglioramenti o aggiornamenti per problemi non correlati alla sicurezza che interessano queste librerie. Le API MI devono essere usate per tutti i nuovi sviluppi.

Il metodo GetBuffer restituisce un puntatore al buffer dei caratteri interno per l'oggetto CHString .

Sintassi

LPWSTR  throw(CHeap_Exception) GetBuffer(
  int nMinBufLength
);

Parametri

nMinBufLength

Dimensioni minime del buffer di caratteri in caratteri. Questo valore non include spazio per un carattere di terminazione NULL .

Valore restituito

Puntatore LPWSTR al buffer di caratteri (con terminazione NULL) dell'oggetto.

Commenti

LPWSTR restituito non è const e pertanto consente la modifica diretta del contenuto CHString.

Se si usa il puntatore restituito da GetBuffer per modificare il contenuto della stringa, è necessario chiamare ReleaseBuffer prima di usare qualsiasi altro metodo CHString .

Dopo una chiamata a ReleaseBuffer, l'indirizzo restituito da GetBuffer potrebbe non essere valido perché altre operazioni CHString possono causare la riallocazione del buffer CHString . Se non si modifica la lunghezza della stringa CHString , il buffer non viene riallocato. La memoria buffer viene liberata automaticamente quando l'oggetto CHString viene eliminato definitivamente.

Si noti che se si tiene traccia della lunghezza della stringa manualmente, non è consigliabile aggiungere il carattere NULL di terminazione. È tuttavia necessario specificare la lunghezza finale della stringa quando si rilascia il buffer con ReleaseBuffer. Se si aggiunge un carattere NULL di terminazione, è necessario passare –1 per la lunghezza a ReleaseBuffer, che chiama wcslen nel buffer per determinarne la lunghezza.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista
Server minimo supportato Windows Server 2008
Piattaforma di destinazione Windows
Intestazione chstring.h (include FwCommon.h)
Libreria FrameDyn.lib
DLL FrameDynOS.dll; FrameDyn.dll

Vedi anche

CHString

CHString::GetBufferSetLength

CHString::ReleaseBuffer