Bagikan melalui


Metode CHString::GetBuffer (chstring.h)

[Kelas CHString adalah bagian dari Kerangka Kerja Penyedia WMI yang sekarang dipertimbangkan dalam keadaan akhir, dan tidak ada pengembangan, peningkatan, atau pembaruan lebih lanjut yang akan tersedia untuk masalah terkait non-keamanan yang memengaruhi pustaka ini. API MI harus digunakan untuk semua pengembangan baru.]

Metode GetBuffer mengembalikan penunjuk ke buffer karakter internal untuk objek CHString .

Sintaks

LPWSTR  throw(CHeap_Exception) GetBuffer(
  int nMinBufLength
);

Parameter

nMinBufLength

Ukuran minimum buffer karakter dalam karakter. Nilai ini tidak menyertakan ruang untuk terminator NULL .

Mengembalikan nilai

Penunjuk LPWSTR ke buffer karakter objek (dihentikan NULL).

Keterangan

LPWSTR yang dikembalikan tidak kontra dan oleh karena itu memungkinkan modifikasi langsung konten CHString.

Jika Anda menggunakan penunjuk yang dikembalikan oleh GetBuffer untuk mengubah konten string, Anda harus memanggil ReleaseBuffer sebelum menggunakan metode CHString lainnya.

Setelah panggilan ke ReleaseBuffer, alamat yang dikembalikan oleh GetBuffer mungkin tidak valid karena operasi CHString tambahan dapat menyebabkan buffer CHString direalokasikan. Jika Anda tidak mengubah panjang string CHString , buffer tidak dialokasikan. Memori buffer dibebaskan secara otomatis ketika objek CHString dihancurkan.

Perhatikan bahwa jika Anda melacak panjang string sendiri, Anda tidak boleh menambahkan karakter NULL yang mengakhiri. Namun, Anda harus menentukan panjang string akhir saat merilis buffer dengan ReleaseBuffer. Jika Anda menambahkan karakter NULL yang mengakhiri, Anda harus meneruskan -1 untuk panjangnya ke ReleaseBuffer, yang memanggil wcslen pada buffer untuk menentukan panjangnya.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista
Server minimum yang didukung Windows Server 2008
Target Platform Windows
Header chstring.h (termasuk FwCommon.h)
Pustaka FrameDyn.lib
DLL FrameDynOS.dll; FrameDyn.dll

Lihat juga

CHString

CHString::GetBufferSetLength

CHString::ReleaseBuffer