Fungsi WindowsPromoteStringBuffer (winstring.h)
Membuat HSTRING dari HSTRING_BUFFER yang ditentukan.
Sintaks
HRESULT WindowsPromoteStringBuffer(
HSTRING_BUFFER bufferHandle,
HSTRING *string
);
Parameter
bufferHandle
Jenis: [in] HSTRING_BUFFER
Buffer yang digunakan untuk HSTRING baru. Anda harus menggunakan fungsi WindowsPreallocateStringBuffer untuk membuat HSTRING_BUFFER.
string
Jenis: [out] HSTRING*
HSTRING yang baru dibuat yang berisi konten bufferHandle.
Mengembalikan nilai
Jenis: HRESULT
Fungsi ini dapat mengembalikan salah satu nilai ini.
Menampilkan kode | Deskripsi |
---|---|
|
HSTRING berhasil dibuat. |
|
string adalah NULL. |
|
bufferHandle tidak dibuat dengan memanggil fungsi WindowsPreallocateStringBuffer , atau pemanggil telah menimpa karakter NULL yang mengakhiri di bufferHandle. |
Keterangan
Gunakan fungsi WindowsPromoteStringBuffer untuk membuat HSTRING baru dari HSTRING_BUFFER. Memanggil fungsi WindowsPromoteStringBuffer mengonversi buffer yang dapat diubah menjadi HSTRING yang tidak dapat diubah. Gunakan fungsi WindowsPreallocateStringBuffer untuk membuat HSTRING_BUFFER.
Jika panggilan WindowsPromoteStringBuffer gagal, Anda dapat memanggil fungsi WindowsDeleteStringBuffer untuk membuang buffer yang dapat diubah.
Setiap panggilan ke fungsi WindowsPromoteStringBuffer harus dicocokkan dengan panggilan yang sesuai ke WindowsDeleteString.
Contoh
Contoh kode berikut menunjukkan cara menggunakan fungsi WindowsPromoteStringBuffer .
#include <winstring.h>
int main()
{
HSTRING hString = NULL;
HSTRING_BUFFER hStringBuffer = NULL;
PWSTR strBuffer = NULL;
HRESULT hr = WindowsPreallocateStringBuffer(10, &strBuffer, &hStringBuffer);
if (SUCCEEDED(hr))
{
// Fill in the buffer
hr = WindowsPromoteStringBuffer(hStringBuffer, &hString);
if (SUCCEEDED(hr))
{
WindowsDeleteString(hString);
}
else
{
WindowsDeleteStringBuffer(hStringBuffer);
}
}
}
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 8 [aplikasi desktop | Aplikasi UWP] |
Server minimum yang didukung | Windows Server 2012 [aplikasi desktop | Aplikasi UWP] |
Target Platform | Windows |
Header | winstring.h |
Pustaka | RuntimeObject.lib |
DLL | ComBase.dll |