Freigeben über


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)

Weitere Informationen

CloseWindowStation

GetUserObjectInformation

OpenWindowStation

Window Station- und Desktopfunktionen

Fensterstationen