CreateWindowStationA-Funktion (winuser.h)
Erstellt ein Fensterstationsobjekt, ordnet es dem aufrufenden Prozess zu und weist es der aktuellen Sitzung zu.
Syntax
HWINSTA CreateWindowStationA(
[in, optional] LPCSTR lpwinsta,
DWORD dwFlags,
[in] ACCESS_MASK dwDesiredAccess,
[in, optional] LPSECURITY_ATTRIBUTES lpsa
);
Parameter
[in, optional] lpwinsta
Der Name der zu erstellenden Fensterstation. Fensterstationsnamen beachten die Groß-/Kleinschreibung und dürfen keine umgekehrten Schrägstriche (\) enthalten. Nur Mitglieder der Gruppe Administratoren dürfen einen Namen angeben. Wenn lpwinstaNULL oder eine leere Zeichenfolge ist, bildet das System mithilfe des Anmeldesitzungsbezeichners für den aufrufenden Prozess einen Fensterstationsnamen. Um diesen Namen abzurufen, rufen Sie die GetUserObjectInformation-Funktion auf.
dwFlags
Wenn dieser Parameter CWF_CREATE_ONLY ist und die Fensterstation bereits vorhanden ist, schlägt der Aufruf fehl. Wenn dieses Flag nicht angegeben ist und die Fensterstation bereits vorhanden ist, ist die Funktion erfolgreich und gibt ein neues Handle an die vorhandene Fensterstation zurück.
Windows XP/2000: Dieser Parameter ist reserviert und muss null sein.
[in] dwDesiredAccess
Die Art des Zugriffs, den das zurückgegebene Handle auf die Fensterstation hat. Darüber hinaus können Sie beliebige Standardzugriffsrechte wie READ_CONTROL oder WRITE_DAC und eine Kombination aus den fensterstationsspezifischen Zugriffsrechten angeben. Weitere Informationen finden Sie unter Window Station Security and Access Rights ( Windows Station Security and Access Rights).
[in, optional] lpsa
Ein Zeiger auf eine SECURITY_ATTRIBUTES-Struktur , die bestimmt, ob das zurückgegebene Handle von untergeordneten Prozessen geerbt werden kann. Wenn lpsaNULL ist, kann das Handle nicht geerbt werden.
Das lpSecurityDescriptor-Element der Struktur gibt einen Sicherheitsdeskriptor für die neue Fensterstation an. Wenn lpsaNULL ist, erhält die Fensterstation (und alle im Fenster erstellten Desktops) einen Sicherheitsdeskriptor, der allen Benutzern GENERIC_ALL Zugriff gewährt.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein Handle für die neu erstellte Fensterstation. Wenn die angegebene Fensterstation bereits vorhanden ist, ist die Funktion erfolgreich und gibt ein Handle an die vorhandene Fensterstation zurück.
Wenn bei der Funktion ein Fehler auftritt, ist der Rückgabewert NULL. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Hinweise
Nachdem Sie mit dem Handle fertig sind, müssen Sie CloseWindowStation aufrufen, um das Handle zu befreien.
Hinweis
Der winuser.h-Header definiert CreateWindowStation 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 nicht codierungsneutralem Code kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | winuser.h (einschließlich Windows.h) |
Bibliothek | User32.lib |
DLL | User32.dll |
APIs | ext-ms-win-ntuser-windowstation-l1-1-0 (eingeführt in Windows 8) |