QueryServiceLockStatusW, fonction (winsvc.h)
[Cette fonction n’a aucun effet à compter de Windows Vista.]
Récupère l’état du verrou de la base de données du gestionnaire de contrôle de service spécifié.
Syntaxe
BOOL QueryServiceLockStatusW(
[in] SC_HANDLE hSCManager,
[out, optional] LPQUERY_SERVICE_LOCK_STATUSW lpLockStatus,
[in] DWORD cbBufSize,
[out] LPDWORD pcbBytesNeeded
);
Paramètres
[in] hSCManager
Handle de la base de données du gestionnaire de contrôle de service. La fonction OpenSCManager retourne ce handle, qui doit avoir le droit d’accès SC_MANAGER_QUERY_LOCK_STATUS. Pour plus d’informations, consultez Sécurité des services et droits d’accès.
[out, optional] lpLockStatus
Un pointeur vers une structure QUERY_SERVICE_LOCK_STATUS qui reçoit l’état de verrouillage de la base de données spécifiée est retourné, ainsi que les chaînes auxquelles ses membres pointent.
[in] cbBufSize
Taille de la mémoire tampon pointée par le paramètre lpLockStatus
[out] pcbBytesNeeded
Pointeur vers une variable qui reçoit le nombre d’octets nécessaires pour retourner toutes les informations d’état de verrouillage, si la fonction échoue.
Valeur de retour
Si la fonction réussit, la valeur de retour est différente de zéro.
Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations d’erreur étendues, appelez GetLastError.
Les codes d’erreur suivants peuvent être définis par le gestionnaire de contrôle de service. D’autres codes d’erreur peuvent être définis par les fonctions de Registre appelées par le gestionnaire de contrôle de service.
Retourner le code | Description |
---|---|
|
Le handle n’a pas le droit d’accès SC_MANAGER_QUERY_LOCK_STATUS. |
|
Il existe plus d’informations d’état de verrouillage que le lpLockStatus tampon. Le nombre d’octets requis pour obtenir toutes les informations est retourné dans le paramètre |
|
Le handle spécifié n’est pas valide. |
Remarques
La fonction QueryServiceLockStatus retourne une structure QUERY_SERVICE_LOCK_STATUS qui indique si la base de données spécifiée est verrouillée. Si la base de données est verrouillée, la structure fournit le nom de compte de l’utilisateur propriétaire du verrou et la durée pendant laquelle le verrou a été conservé.
Un processus appelle la fonction LockServiceDatabase pour acquérir la propriété d’un verrou de base de données du gestionnaire de contrôle de service et la fonction UnlockServiceDatabase pour libérer le verrou.
Note
L’en-tête winsvc.h définit QueryServiceLockStatus comme 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.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows XP [applications de bureau uniquement] |
serveur minimum pris en charge | Windows Server 2003 [applications de bureau uniquement] |
plateforme cible | Windows |
d’en-tête | winsvc.h (inclure Windows.h) |
bibliothèque | Advapi32.lib |
DLL | Advapi32.dll |