Fonction NPLogonNotify (npapi.h)
Notes
Cette API a été dépréciée et sera supprimée dans une version ultérieure.
MPR appelle cette fonction pour informer le gestionnaire d’informations d’identification qu’un événement d’ouverture de session s’est produit, ce qui permet au gestionnaire d’informations d’identification de retourner un script d’ouverture de session. La fonction NPLogonNotify est implémentée par une DLL du gestionnaire d’informations d’identification (voir Remarques).
Syntaxe
DWORD NPLogonNotify(
[in] PLUID lpLogonId,
[in] LPCWSTR lpAuthentInfoType,
[in] LPVOID lpAuthentInfo,
[in] LPCWSTR lpPreviousAuthentInfoType,
[in] LPVOID lpPreviousAuthentInfo,
[in] LPWSTR lpStationName,
[in] LPVOID StationHandle,
[out] LPWSTR *lpLogonScript
);
Paramètres
[in] lpLogonId
Pointeur vers l’identificateur de la session qui vient de se connecter.
[in] lpAuthentInfoType
Pointeur vers une chaîne qui identifie le type de structure pointé vers lpAuthentInfo.
Lorsque Microsoft est l’authentificateur principal, l’une des chaînes suivantes est spécifiée pour les ouvertures de session interactives et de contrôleur de service.
MSV1_0:Interactive
Kerberos:Interactive
[in] lpAuthentInfo
Pointeur vers une structure qui contient les informations d’identification utilisées pour enregistrer correctement l’utilisateur via l’authentificateur principal.
Lorsque Microsoft est l’authentificateur principal (autrement dit, lorsque lpAuthentifoType est « MSV1_0:Interactive » ou « Kerberos:Interactive »), la structure utilisée est MSV1_0_INTERACTIVE_LOGON ou KERB_INTERACTIVE_LOGON.
[in] lpPreviousAuthentInfoType
Pointeur vers une chaîne qui identifie le type de structure pointé vers lpPreviousAuthentInfo. Si le pointeur a la valeur NULL, il n’y avait aucune information précédente. Les valeurs attendues ici sont les mêmes que celles de lpAuthentInfoType.
Lorsque Microsoft est l’authentificateur principal, la chaîne suivante est spécifiée pour les ouvertures de session interactives et de contrôleur de service.
MSV1_0:Interactive
[in] lpPreviousAuthentInfo
Pointeur vers une structure qui contient les informations d’identification utilisées avant que les informations d’authentification ne changent. Des informations préalables sont fournies si l’utilisateur a été forcé de modifier le mot de passe (ou d’autres informations d’authentification) avant de se connecter. Si l’utilisateur n’a pas été obligé de modifier les informations d’authentification, ce pointeur a la valeur NULL. Les valeurs attendues ici sont les mêmes que celles de lpAuthentInfo.
Lorsque Microsoft est l’authentificateur principal, la structure utilisée est MSV1_0_INTERACTIVE_LOGON ou KERB_INTERACTIVE_LOGON.
[in] lpStationName
Pointeur vers une chaîne qui spécifie le nom de la station à laquelle l’utilisateur s’est connecté. Le nom de la station peut être utilisé pour déterminer si des informations supplémentaires (spécifiques au fournisseur) peuvent être obtenues.
Lorsque Microsoft est l’authentificateur principal, l’une des chaînes suivantes est spécifiée.
[in] StationHandle
Valeur 32 bits dont la signification dépend du nom (et, par conséquent, du type) de la station spécifiée dans lpStationName.
Valeur | Signification |
---|---|
|
Handle de la boîte de dialogue propriétaire (hwndOwner) actuellement affichée à l’écran. |
|
Données aléatoires. Ne pas utiliser. |
[out] lpLogonScript
Pointeur vers un emplacement où un pointeur vers une chaîne terminée par null peut être retourné.
Une fois la fonction terminée, cette valeur peut pointer vers une chaîne terminée par null qui contient le nom d’un programme à exécuter, ainsi que tous les paramètres requis par le programme. LocalAlloc doit être utilisé pour allouer la mémoire pour la chaîne retournée. Cette mémoire est libérée par MPR lorsqu’elle n’est plus nécessaire.
Valeur retournée
Si la fonction réussit, la fonction retourne WN_SUCCESS.
Si la fonction échoue, elle retourne un code d’erreur, qui peut être l’un des éléments suivants.
Code de retour | Description |
---|---|
|
NPLogonNotify n’est pas pris en charge par le gestionnaire d’informations d’identification. |
|
Le réseau n’est pas présent. |
|
Le gestionnaire d’informations d’identification est toujours en cours d’initialisation et n’est pas prêt à être appelé. |
Notes
La fonction NPLogonNotify est implémentée par les gestionnaires d’informations d’identification pour recevoir des notifications lorsque les informations d’authentification changent.
Chaque gestionnaire d’informations d’identification est autorisé à renvoyer une chaîne de ligne de commande unique qui peut être utilisée pour exécuter un script d’ouverture de session (l’implémentation ne doit pas appeler LogonUser ni charger un profil utilisateur directement). La mémoire tampon de cette chaîne est allouée par le gestionnaire d’informations d’identification. MPR est responsable de sa libération. La chaîne retournée dans lpLogonScript doit contenir toutes les informations nécessaires pour exécuter le script en tant que ligne de commande passée à CreateProcess.
Si la chaîne nécessite que le processeur de commandes traite la chaîne, comme dans le cas des commandes ou des fichiers batch, la chaîne doit être précédée de cmd /C.
Les scripts d’ouverture de session sont exécutés dans le contexte utilisateur lorsque le profil utilisateur est disponible. Toutefois, les variables d’environnement qui sont définies ne seront pas globales et ne seront pas disponibles pour l’interpréteur de commandes initial (par exemple, Program Manager) ou tout autre programme exécuté au nom de l’utilisateur.
Spécifications
Client minimal pris en charge | Windows XP [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | npapi.h |