Freigeben über


CHString::GetBuffer-Methode (chstring.h)

[Die Klasse CHString ist Teil des WMI-Provider-Frameworks, das nun als endgültig betrachtet wird, und es sind keine weiteren Entwicklungen, Verbesserungen oder Updates für nicht sicherheitsrelevante Probleme verfügbar, die diese Bibliotheken betreffen. Die MI-APIs sollten für alle Neuentwicklungen verwendet werden.]

Die GetBuffer-Methode gibt einen Zeiger auf den internen Zeichenpuffer für das CHString-Objekt zurück.

Syntax

LPWSTR  throw(CHeap_Exception) GetBuffer(
  int nMinBufLength
);

Parameter

nMinBufLength

Die Mindestgröße des Zeichenpuffers in Zeichen. Dieser Wert enthält keinen Speicherplatz für einen NULL-Abschlussator .

Rückgabewert

Ein LPWSTR-Zeiger auf den (NULL-beendeten) Zeichenpuffer des Objekts.

Hinweise

Die zurückgegebene LPWSTR ist nicht const und ermöglicht daher eine direkte Änderung von CHString-Inhalten .

Wenn Sie den von GetBuffer zurückgegebenen Zeiger verwenden, um den Zeichenfolgeninhalt zu ändern, müssen Sie ReleaseBuffer aufrufen, bevor Sie andere CHString-Methoden verwenden.

Nach einem Aufruf von ReleaseBuffer ist die von GetBuffer zurückgegebene Adresse möglicherweise ungültig, da zusätzliche CHString-Vorgänge dazu führen können, dass der CHString-Puffer neu zugewiesen wird. Wenn Sie die Länge der CHString-Zeichenfolge nicht ändern, wird der Puffer nicht neu zugeordnet. Der Pufferspeicher wird automatisch freigegeben, wenn das CHString-Objekt zerstört wird.

Beachten Sie, dass Sie das beendende NULL-Zeichen nicht anfügen sollten, wenn Sie die Länge der Zeichenfolge selbst nachverfolgen. Sie müssen jedoch die endgültige Zeichenfolgenlänge angeben, wenn Sie den Puffer mit ReleaseBuffer freigeben. Wenn Sie ein beendendes NULL-Zeichen anfügen, sollten Sie –1 für die Länge an ReleaseBuffer übergeben, das wcslen für den Puffer aufruft, um dessen Länge zu bestimmen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista
Unterstützte Mindestversion (Server) Windows Server 2008
Zielplattform Windows
Kopfzeile chstring.h (einschließlich FwCommon.h)
Bibliothek FrameDyn.lib
DLL FrameDynOS.dll; FrameDyn.dll

Weitere Informationen

CHString

CHString::GetBufferSetLength

CHString::ReleaseBuffer