WinSLIStartup
La fonction WinSLIStartup permet à une application utilisant les verbes SLI (Session Level Interface) de spécifier la version de l’application d’unité logique Microsoft Windows (LUA) requise et de récupérer les détails de l’implémentation spécifique de Windows LUA. Cette fonction doit être appelée par une application pour s’inscrire auprès d’une implémentation Windows LUA avant d’émettre d’autres appels LUA Windows.
Syntaxe
int WINAPI WinSLIStartup(
WORD wVersionRequired,
LUADATA FAR *lpLuaData
);
Paramètres
wVersionRequired
Spécifie la version de la prise en charge de Windows LUA requise. L’octet d’ordre supérieur spécifie le numéro de version mineure (révision). L’octet d’ordre inférieur spécifie le numéro de version principale.
lpLuaData
Pointeur vers la structure LUADATA contenant les informations de numéro de version retournées.
Valeur renvoyée
Le code de retour spécifie si l’application a été inscrite correctement et si l’implémentation de Windows LUA peut prendre en charge le numéro de version spécifié. Si la valeur est zéro, elle a été inscrite avec succès et la version spécifiée peut être prise en charge. Sinon, le code de retour est l’un des éléments suivants :
WLUASYSNOTREADY
Le système réseau sous-jacent n’est pas prêt pour la communication réseau.
WLUAVERNOTSUPPORTED
La version de la prise en charge de Windows LUA demandée n’est pas fournie par cette implémentation windows LUA particulière.
WLUAINVALID
La version de Windows LUA spécifiée par l’application n’est pas prise en charge par cette bibliothèque de liens dynamiques (DLL).
WLUAFAILURE
Une défaillance s’est produite lors de l’initialisation de la DLL Windows LUA. Cela se produit généralement parce qu’un appel du système d’exploitation a échoué.
WLUAINITREJECT
WinSLIStartup a été appelé plusieurs fois.
Remarques
Pour prendre en charge les futures implémentations et applications Windows LUA qui peuvent présenter des différences de fonctionnalités, une négociation a lieu dans WinSLIStartup. Une application passe à WinSLIStartup la version de Windows LUA qu’elle peut utiliser. Si cette version est inférieure à la version la plus basse prise en charge par la DLL Windows LUA, la DLL ne peut pas prendre en charge l’application et WinSLIStartup échoue. Toutefois, si la version n’est pas inférieure, l’appel réussit et retourne la version la plus élevée de Windows LUA prise en charge par la DLL. Si cette version est inférieure à la version la plus basse prise en charge par l’application, l’application échoue à son initialisation ou tente de trouver une autre DLL Windows LUA sur le système.
Cette négociation permet à une DLL Windows LUA et à une application Windows LUA de prendre en charge une gamme de versions de Windows LUA. Une application peut utiliser correctement une DLL en cas de chevauchement des versions. Le tableau suivant illustre le fonctionnement de WinSLIStartup conjointement avec différentes versions d’application et de DLL.
Versions de l’application | Versions de DLL LUA | À WinSLIStartup |
Du WinSLIStartup |
Résultats |
---|---|---|---|---|
1.0 | 1.0 | 1.0 | 1.0 | Utiliser 1.0 |
1.0, 2.0 | 1.0 | 2.0 | 1.0 | Utiliser 1.0 |
1.0 | 1.0, 2.0 | 1.0 | 2,0 | Utiliser 1.0 |
1.0 | 2.0, 3.0 | 1.0 | WLUAINVALID | Échec |
2.0, 3.0 | 1.0 | 3.0 | 1.0 | Échec de l’application |
1.0, 2.0, 3.0 | 1.0, 2.0, 3.0 | 3,0 | 3,0 | Utiliser 3.0 |
Notes
L’application qui utilise des verbes SLI doit appeler WinSLIStartup avant d’émettre d’autres commandes LUA. Toutefois, WinSLIStartup ne doit être appelé qu’une seule fois par application. S’il est appelé plusieurs fois, les appels suivants sont rejetés.
Les détails de l’implémentation réelle de LUA sont décrits dans la structure WLUADATA , définie comme suit :
typedef struct { WORD wVersion;
char szDescription[WLUADESCRIPTION_LEN+1];
} LUADATA;
Après avoir effectué son dernier appel Windows LUA, une application doit appeler la routine WinSLICleanup .
Chaque application LUA qui utilise des verbes SLI doit effectuer un appel WinSLIStartup avant d’émettre d’autres appels LUA.