Freigeben über


SHStrDupA-Funktion (shlwapi.h)

Erstellt eine Kopie einer Zeichenfolge im neu zugewiesenen Speicher.

Syntax

LWSTDAPI SHStrDupA(
  [in]  LPCSTR psz,
  [out] LPWSTR *ppwsz
);

Parameter

[in] psz

Typ: LPCTSTR-

Ein Zeiger auf die mit Null beendete Zeichenfolge, die kopiert werden soll.

[out] ppwsz

Typ: LPTSTR*

Ein Zeiger auf eine zugeordnete Unicode-Zeichenfolge, die das Ergebnis enthält. SHStrDup weist speicher für diese Zeichenfolge mit CoTaskMemAlloczu. Sie sollten die Zeichenfolge mit CoTaskMemFree- freigeben, wenn sie nicht mehr benötigt wird.

Im Falle eines Fehlers ist dieser Wert NULL.

Rückgabewert

Typ: HRESULT-

Gibt S_OK zurück, falls erfolgreich, oder ein COM-Fehlerwert andernfalls.

Bemerkungen

Diese Funktion verwendet entweder Unicode- oder ANSI-Zeichenfolgen als Eingabe, die kopierte Zeichenfolge ist jedoch immer Unicode.

Diese Funktion verwendet CoTaskMemAlloc-, um Speicher für die kopierte Zeichenfolge zuzuweisen. Sie müssen diesen Speicher mit CoTaskMemFree freigeben, wenn er nicht mehr benötigt wird.

Anmerkung

Der Header "shlwapi.h" definiert SHStrDup als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 2000 Professional, Windows XP [nur Desktop-Apps]
mindestens unterstützte Server- Windows 2000 Server [nur Desktop-Apps]
Zielplattform- Fenster
Header- shlwapi.h
Library Shlwapi.lib
DLL- Shlwapi.dll (Version 5.0 oder höher)

Siehe auch

StrDup-