GetEnvironmentVariableW-Funktion (processenv.h)
Ruft den Inhalt der angegebenen Variablen aus dem Umgebungsblock des aufrufenden Prozesses ab.
Syntax
DWORD GetEnvironmentVariableW(
[in, optional] LPCWSTR lpName,
[out, optional] LPWSTR lpBuffer,
[in] DWORD nSize
);
Parameter
[in, optional] lpName
Der Name der Umgebungsvariable.
[out, optional] lpBuffer
Ein Zeiger auf einen Puffer, der den Inhalt der angegebenen Umgebungsvariable als null-beendete Zeichenfolge empfängt.
Die maximale Größe einer benutzerdefinierten Umgebungsvariable beträgt 32.767 Zeichen. Es gibt keine technische Einschränkung für die Größe des Umgebungsblocks. Es gibt jedoch praktische Beschränkungen, je nachdem, welche Mechanismen für den Zugriff auf den Block verwendet werden. Beispielsweise kann eine Batchdatei keine Variable festlegen, die länger als die maximale Befehlszeilenlänge ist. Weitere Informationen finden Sie unter Umgebungsvariablen.
[in] nSize
Die Größe des Puffers, auf den der lpBuffer--Parameter verweist, einschließlich des Null-Endzeichens, in Zeichen.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert die Anzahl der im Puffer gespeicherten Zeichen, auf die durch lpBufferverwiesen wird, nicht einschließlich des endenden Nullzeichens.
Wenn lpBuffer- nicht groß genug ist, um die Daten zu speichern, ist der Rückgabewert die Puffergröße in Zeichen, die erforderlich ist, um die Zeichenfolge und das endende Nullzeichen und den Inhalt von lpBuffer- nicht definiert zu halten.
Wenn die Funktion fehlschlägt, ist der Rückgabewert null. Wenn die angegebene Umgebungsvariable im Umgebungsblock nicht gefunden wurde, gibt GetLastError ERROR_ENVVAR_NOT_FOUND zurück.
Bemerkungen
Diese Funktion kann entweder eine Systemumgebungsvariable oder eine Benutzerumgebungsvariable abrufen.
Beispiele
Ein Beispiel finden Sie unter Ändern von Umgebungsvariablen.
Anmerkung
Der processenv.h-Header definiert GetEnvironmentVariable als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante 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 XP [Desktop-Apps | UWP-Apps] |
mindestens unterstützte Server- | Windows Server 2003 [Desktop-Apps | UWP-Apps] |
Zielplattform- | Fenster |
Header- | processenv.h (include Windows.h on Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2) |
Library | Kernel32.lib |
DLL- | Kernel32.dll |