WindowsPromoteStringBuffer-Funktion (winstring.h)
Erstellt einen HSTRING-Wert aus dem angegebenen HSTRING_BUFFER.
Syntax
HRESULT WindowsPromoteStringBuffer(
HSTRING_BUFFER bufferHandle,
HSTRING *string
);
Parameter
bufferHandle
Typ: [in] HSTRING_BUFFER
Der Puffer, der für den neuen HSTRING verwendet werden soll. Sie müssen die WindowsPreallocateStringBuffer-Funktion verwenden, um die HSTRING_BUFFER zu erstellen.
string
Typ: [out] HSTRING*
Das neu erstellte HSTRING , das den Inhalt von bufferHandle enthält.
Rückgabewert
Typ: HRESULT
Diese Funktion kann einen dieser Werte zurückgeben.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Der HSTRING wurde erfolgreich erstellt. |
|
string ist NULL. |
|
bufferHandle wurde nicht durch Aufrufen der WindowsPreallocateStringBuffer-Funktion erstellt, oder der Aufrufer hat das beendende NULL-Zeichen in bufferHandle überschrieben. |
Hinweise
Verwenden Sie die WindowsPromoteStringBuffer-Funktion , um einen neuen HSTRING aus einem HSTRING_BUFFER zu erstellen. Durch Aufrufen der WindowsPromoteStringBuffer-Funktion wird der veränderliche Puffer in einen unveränderlichen HSTRING konvertiert. Verwenden Sie die WindowsPreallocateStringBuffer-Funktion , um die HSTRING_BUFFER zu erstellen.
Wenn der WindowsPromoteStringBuffer-Aufruf fehlschlägt, können Sie die WindowsDeleteStringBuffer-Funktion aufrufen, um den veränderlichen Puffer zu verwerfen.
Jeder Aufruf der WindowsPromoteStringBuffer-Funktion muss mit einem entsprechenden Aufruf von WindowsDeleteString abgeglichen werden.
Beispiele
Im folgenden Codebeispiel wird die Verwendung der WindowsPromoteStringBuffer-Funktion veranschaulicht.
#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);
}
}
}
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 8 [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2012 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | winstring.h |
Bibliothek | RuntimeObject.lib |
DLL | ComBase.dll |