CreateWindowStationA, fonction (winuser.h)

Crée un objet de station de fenêtre, l’associe au processus appelant et l’affecte à la session active.

Syntaxe

HWINSTA CreateWindowStationA(
  [in, optional] LPCSTR                lpwinsta,
                 DWORD                 dwFlags,
  [in]           ACCESS_MASK           dwDesiredAccess,
  [in, optional] LPSECURITY_ATTRIBUTES lpsa
);

Paramètres

[in, optional] lpwinsta

Nom de la station de fenêtre à créer. Les noms de stations de fenêtre ne respectent pas la casse et ne peuvent pas contenir de barres obliques inverses (\). Seuls les membres du groupe Administrateurs sont autorisés à spécifier un nom. Si lpwinsta a la valeur NULL ou une chaîne vide, le système forme un nom de station de fenêtre à l’aide de l’identificateur de session d’ouverture de session pour le processus appelant. Pour obtenir ce nom, appelez la fonction GetUserObjectInformation .

dwFlags

Si ce paramètre est CWF_CREATE_ONLY et que la station de fenêtre existe déjà, l’appel échoue. Si cet indicateur n’est pas spécifié et que la station de fenêtre existe déjà, la fonction réussit et retourne un nouveau handle à la station de fenêtre existante.

Windows XP/2000 : Ce paramètre est réservé et doit être égal à zéro.

[in] dwDesiredAccess

Type d’accès du handle retourné à la station de fenêtre. En outre, vous pouvez spécifier tous les droits d’accès standard, tels que READ_CONTROL ou WRITE_DAC, et une combinaison des droits d’accès spécifiques à la station de fenêtre. Pour plus d’informations, consultez Sécurité et droits d’accès de Window Station.

[in, optional] lpsa

Pointeur vers une structure de SECURITY_ATTRIBUTES qui détermine si le handle retourné peut être hérité par des processus enfants. Si lpsa a la valeur NULL, le handle ne peut pas être hérité.

Le membre lpSecurityDescriptor de la structure spécifie un descripteur de sécurité pour la nouvelle station de fenêtre. Si lpsa a la valeur NULL, la station de fenêtre (et tous les bureaux créés dans la fenêtre) obtient un descripteur de sécurité qui accorde GENERIC_ALL accès à tous les utilisateurs.

Valeur retournée

Si la fonction réussit, la valeur de retour est un handle vers la station de fenêtre nouvellement créée. Si la station de fenêtre spécifiée existe déjà, la fonction réussit et retourne un handle à la station de fenêtre existante.

Si la fonction échoue, la valeur de retour est NULL. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.

Remarques

Une fois que vous avez terminé avec le handle, vous devez appeler CloseWindowStation pour libérer le handle.

Notes

L’en-tête winuser.h définit CreateWindowStation comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

   
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête winuser.h (inclure Windows.h)
Bibliothèque User32.lib
DLL User32.dll
Ensemble d’API ext-ms-win-ntuser-windowstation-l1-1-0 (introduit dans Windows 8)

Voir aussi

FermerWindowStation

GetUserObjectInformation

OpenWindowStation

Windows Station et fonctions de bureau

Stations de fenêtre