Partager via


Vérificateur d’application - Codes d’arrêt - Services

Les tests de services, case activée pour l’utilisation correcte des services Windows. Par exemple, les services sont démarrés et arrêtés correctement. Pour plus d’informations sur les services Windows, consultez Services.

Les codes stop suivants sont contenus dans cet ensemble de tests.

Utilisation d’une API non Unicode (par exemple, RegisterServiceCtrlHandlerA au lieu de RegisterServiceCtrlHandlerW)

Cause probable

Très probablement, l’application n’a pas été compilée avec la macro UNICODE définie et les interfaces non Unicode sont donc utilisées.

Informations affichées par Application Verifier
  • Format:  -  Nom de l’API %ws
  • Paramètre 1  - Non utilisé.
  • Paramètre 2  - Non utilisé.
  • Paramètre 3  - Non utilisé.
  • Paramètre 4  - Non utilisé.

Informations supplémentaires
  • Couche de test :  Service
  • ID d’arrêt :  USING_NON_UNICODE_API
  • Arrêter le code :  4000000
  • Gravité:  Erreur
  • Erreur ponctuelle :  non
  • Rapport d’erreurs :  Pause
  • Journaliser dans le fichier :  Oui
  • Créer un backtrace :  Oui

L’API StartServiceCtrlDispatcher est appelée une deuxième fois

Cause probable

Cette API est destinée à être appelée une seule fois au début de la fonction wmain de service.

Informations affichées par Application Verifier
  • Format:  -  Nom de l’API %ws
  • Paramètre 1  - SERVICE_TABLE_ENTRY paramètre.
  • Paramètre 2  - Non utilisé.
  • Paramètre 3  - Non utilisé.
  • Paramètre 4  - Non utilisé.

Informations supplémentaires
  • Couche de test :  Service
  • ID d’arrêt :  CTRL_DISPATCHER_CALLED_TWICE
  • Arrêter le code :  4000001
  • Gravité:  Erreur
  • Erreur ponctuelle :  non
  • Rapport d’erreurs :  Pause
  • Journaliser dans le fichier :  Oui
  • Créer un backtrace :  Oui

Le handle de SERVICE_STATUS non valide est passé à SetServiceStatus

Cause probable

Le handle SERVICE_STATUS non valide est passé à SetServiceStatus.

Informations affichées par Application Verifier
  • Format:  -  Nom de l’API %ws
  • Paramètre 1  - SERVICE_STATUS_HANDLE valeur.
  • Paramètre 2  - Non utilisé.
  • Paramètre 3  - Non utilisé.
  • Paramètre 4  - Non utilisé.

Informations supplémentaires
  • Couche de test :  Service
  • ID d’arrêt :  INVALID_SERVICE_STATUS_HANDLE
  • Arrêter le code :  4000002
  • Gravité:  Erreur
  • Erreur ponctuelle :  non
  • Rapport d’erreurs :  Pause
  • Journaliser dans le fichier :  Oui
  • Créer un backtrace :  Oui

SetServiceStatus est appelé à partir de deux threads

Cause probable

Cette API est destinée à être appelée en série.

Informations affichées par Application Verifier
  • Format:  - Le  nom de l’API %ws est appelé simultanément à partir du service %ws
  • Paramètre 1  - LPSERVICE_STATUS valeur passée.
  • Paramètre 2  - Non utilisé.
  • Paramètre 3  - Non utilisé.
  • Paramètre 4  - Non utilisé.

Informations supplémentaires
  • Couche de test :  Service
  • ID d’arrêt :  SET_SERVICE_STATUS_RACE
  • Arrêter le code :  4000003
  • Gravité:  Erreur
  • Erreur ponctuelle :  non
  • Rapport d’erreurs :  Pause
  • Journaliser dans le fichier :  Oui
  • Créer un backtrace :  Oui

Les contrôles STOP/SHUTDOWN sont acceptés lorsque le service est dans START_PENDING état

Cause probable

La plupart des services ne peuvent pas accepter les contrôles d’arrêt/arrêt pendant l’initialisation

Informations affichées par Application Verifier
  • Format:  -  Nom du service : %ws dwControlsAccepted : %08X
  • Paramètre 1  - LPSERVICE_STATUS valeur passée.
  • Paramètre 2  - Non utilisé.
  • Paramètre 3  - Non utilisé.
  • Paramètre 4  - Non utilisé.

Informations supplémentaires
  • Couche de test :  Service
  • ID d’arrêt :  STOP_SHUTDOWN_ACCEPTED
  • Arrêter le code :  4000004
  • Gravité:  Avertissement
  • Erreur ponctuelle :  non
  • Rapport d’erreurs :  Aucun
  • Journaliser dans le fichier :  Oui
  • Créer un backtrace :  Oui

SERVICE tente une transition d’état non valide

Cause probable

Le service a tenté d’effectuer une transition d’état non valide ou de définir des paramètres status identiques

Informations affichées par Application Verifier
  • Format:  -  Service %ws a été trouvé tentant une transition d’état non valide
  • Paramètre 1  - LPSERVICE_STATUS État actuel.
  • Paramètre 2  - LPSERVICE_STATUS nouvel état.
  • Paramètre 3  - Last SetServiceStatus stack trace.
  • Paramètre 4  - Non utilisé.

Informations supplémentaires
  • Couche de test :  Service
  • ID d’arrêt :  INVALID_STATE_TRANSITION
  • Arrêter le code :  4000005
  • Gravité:  Erreur
  • Erreur ponctuelle :  non
  • Rapport d’erreurs :  Pause
  • Journaliser dans le fichier :  Oui
  • Créer un backtrace :  Oui

SERVICE tente de définir des paramètres status identiques

Cause probable

Le service a tenté de définir des paramètres status identiques

Informations affichées par Application Verifier
  • Format:  -  Le service %ws a tenté de définir des paramètres de status identiques
  • Paramètre 1  - LPSERVICE_STATUS État actuel.
  • Paramètre 2  - LPSERVICE_STATUS nouvel état.
  • Paramètre 3  - Last SetServiceStatus stack trace.
  • Paramètre 4  - Non utilisé.

Informations supplémentaires
  • Couche de test :  Service
  • ID d’arrêt :  DUPLICATE_STATE_PARAMS
  • Arrêter le code :  4000006
  • Gravité:  Avertissement
  • Erreur ponctuelle :  non
  • Rapport d’erreurs :  Aucun
  • Journaliser dans le fichier :  Oui
  • Créer un backtrace :  Oui

SERVICE laisse les threads en attente après avoir entré l’état ARRÊTÉ

Cause probable

Le service laisse les threads en attente après avoir déclaré l’état STOP

Informations affichées par Application Verifier
  • Format:  -  Le service %ws fuit des threads
  • Paramètre 1  - ID de thread du thread qui a été divulgué.
  • Paramètre 2  - Étiquette de service.
  • Paramètre 3  - Non utilisé.
  • Paramètre 4  - Non utilisé.

Informations supplémentaires
  • Couche de test :  Service
  • ID d’arrêt :  LEAKED_THREAD
  • Arrêter le code :  4000007
  • Gravité:  Erreur
  • Erreur ponctuelle :  non
  • Rapport d’erreurs :  Pause
  • Journaliser dans le fichier :  Oui
  • Créer un backtrace :  Oui

Voir aussi

Vérificateur d’application - Codes et définitions d’arrêt

Vérificateur d’application - Vue d’ensemble

Vérificateur d’application - Fonctionnalités

Vérificateur d’applications - Test des applications

Vérificateur d’application - Tests dans Application Verifier

Vérificateur d’application - Débogage des arrêts du vérificateur d’application

Vérificateur d’application - Forum aux questions