Anwendungsüberprüfung – Stoppcodes – Dienste
Überprüfen Sie bei den Diensten, ob windows-Dienste ordnungsgemäß verwendet werden. Beispielsweise, dass Dienste ordnungsgemäß gestartet und beendet werden. Weitere Informationen zu Windows-Diensten finden Sie unter Dienste.
Die folgenden Stoppcodes sind in diesem Testsatz enthalten.
Verwenden einer Nicht-Unicode-API (z. B. RegisterServiceCtrlHandlerA anstelle von RegisterServiceCtrlHandlerW)
Wahrscheinliche UrsacheWahrscheinlich wurde die Anwendung nicht mit dem definierten UNICODE-Makro kompiliert und daher werden Nicht-Unicode-Schnittstellen verwendet.
Von Application Verifier angezeigte Informationen- Format: - API-Name %ws
- Parameter 1 - Nicht verwendet.
- Parameter 2 - Nicht verwendet.
- Parameter 3 - Nicht verwendet.
- Parameter 4 - Nicht verwendet.
- Testebene: Service
- Stopp-ID: USING_NON_UNICODE_API
- Code beenden: 4000000
- Schweregrad: Fehler
- Einmalfehler: Nein
- Fehlerbericht: Brechen
- Melden Sie sich an die Datei an: Ja
- Backtrace erstellen: Ja
StartServiceCtrlDispatcher-API wird ein zweites Mal aufgerufen
Wahrscheinliche UrsacheDiese API soll nur einmal zu Beginn der Dienstfunktion wmain aufgerufen werden.
Von Application Verifier angezeigte Informationen- Format: - API-Name %ws
- Parameter 1 - SERVICE_TABLE_ENTRY Parameter.
- Parameter 2 - Nicht verwendet.
- Parameter 3 - Nicht verwendet.
- Parameter 4 - Nicht verwendet.
- Testebene: Service
- Stopp-ID: CTRL_DISPATCHER_CALLED_TWICE
- Code beenden: 4000001
- Schweregrad: Fehler
- Einmalfehler: Nein
- Fehlerbericht: Brechen
- Melden Sie sich an die Datei an: Ja
- Backtrace erstellen: Ja
Ungültiges SERVICE_STATUS Handle an SetServiceStatus übergeben wird
Wahrscheinliche UrsacheUngültige SERVICE_STATUS Handle wird an SetServiceStatus übergeben.
Von Application Verifier angezeigte Informationen- Format: - API-Name %ws
- Parameter 1 - SERVICE_STATUS_HANDLE Wert.
- Parameter 2 - Nicht verwendet.
- Parameter 3 - Nicht verwendet.
- Parameter 4 - Nicht verwendet.
- Testebene: Service
- Stopp-ID: INVALID_SERVICE_STATUS_HANDLE
- Code beenden: 4000002
- Schweregrad: Fehler
- Einmalfehler: Nein
- Fehlerbericht: Brechen
- Melden Sie sich an die Datei an: Ja
- Backtrace erstellen: Ja
SetServiceStatus wird von zwei Threads aufgerufen
Wahrscheinliche UrsacheDiese API soll fortlaufend aufgerufen werden.
Von Application Verifier angezeigte Informationen- Format: - API-Name %ws wird gleichzeitig vom %ws-Dienst aufgerufen
- Parameter 1 - LPSERVICE_STATUS Wert übergeben.
- Parameter 2 - Nicht verwendet.
- Parameter 3 - Nicht verwendet.
- Parameter 4 - Nicht verwendet.
- Testebene: Service
- Stopp-ID: SET_SERVICE_STATUS_RACE
- Code beenden: 4000003
- Schweregrad: Fehler
- Einmalfehler: Nein
- Fehlerbericht: Brechen
- Melden Sie sich an die Datei an: Ja
- Backtrace erstellen: Ja
STOP/SHUTDOWN-Steuerelemente werden akzeptiert, wenn sich der Dienst in START_PENDING Zustand befindet.
Wahrscheinliche UrsacheDie meisten Dienste können während der Initialisierung keine Stopp-/Herunterfahren-Steuerelemente akzeptieren.
Von Application Verifier angezeigte Informationen- Format: - Dienstname: %ws dwControlsAccepted: %08X
- Parameter 1 - LPSERVICE_STATUS Wert übergeben.
- Parameter 2 - Nicht verwendet.
- Parameter 3 - Nicht verwendet.
- Parameter 4 - Nicht verwendet.
- Testebene: Service
- Stopp-ID: STOP_SHUTDOWN_ACCEPTED
- Code beenden: 4000004
- Schweregrad: Warnung
- Einmalfehler: Nein
- Fehlerbericht: Nichts
- Protokollieren in Datei: Ja
- Backtrace erstellen: Ja
SERVICE versucht einen ungültigen Zustandsübergang.
Wahrscheinliche UrsacheDer Dienst hat versucht, einen ungültigen Zustandsübergang durchzuführen oder identische status Parameter festzulegen.
Von Application Verifier angezeigte Informationen- Format: – Der Dienst %ws wurde beim Versuch eines ungültigen Zustandsübergangs gefunden.
- Parameter 1 - LPSERVICE_STATUS aktueller Zustand.
- Parameter 2 - LPSERVICE_STATUS Neuer Zustand.
- Parameter 3 - Letzte SetServiceStatus-Stapelablaufverfolgung.
- Parameter 4 - Nicht verwendet.
- Testebene: Service
- Stopp-ID: INVALID_STATE_TRANSITION
- Code beenden: 4000005
- Schweregrad: Fehler
- Einmaliger Fehler: Nein
- Fehlerbericht: Brechen
- Protokollieren in Datei: Ja
- Backtrace erstellen: Ja
SERVICE versucht, identische status Parameter festzulegen.
Wahrscheinliche UrsacheDer Dienst hat versucht, identische status Parameter festzulegen.
Von Application Verifier angezeigte Informationen- Format: – Der Dienst %ws hat versucht, identische status Parameter festzulegen.
- Parameter 1 - LPSERVICE_STATUS aktueller Zustand.
- Parameter 2 - LPSERVICE_STATUS Neuer Zustand.
- Parameter 3 - Letzte SetServiceStatus-Stapelablaufverfolgung.
- Parameter 4 - Nicht verwendet.
- Testebene: Service
- Stopp-ID: DUPLICATE_STATE_PARAMS
- Code beenden: 4000006
- Schweregrad: Warnung
- Einmaliger Fehler: Nein
- Fehlerbericht: Nichts
- Protokollieren in Datei: Ja
- Backtrace erstellen: Ja
SERVICE verlässt ausstehende Threads, nachdem der Status "BEENDET" eingegeben wurde.
Wahrscheinliche UrsacheDer Dienst verlässt ausstehende Threads, nachdem der Status "BEENDET" deklariert wurde.
Von Application Verifier angezeigte Informationen- Format: - Dienst %ws geht Threads verloren
- Parameter 1 - Thread-ID des durchgesickerten Threads.
- Parameter 2 - Diensttag.
- Parameter 3 - Nicht verwendet.
- Parameter 4 - Nicht verwendet.
- Testebene: Service
- Stopp-ID: LEAKED_THREAD
- Code beenden: 4000007
- Schweregrad: Fehler
- Einmaliger Fehler: Nein
- Fehlerbericht: Brechen
- Protokollieren in Datei: Ja
- Backtrace erstellen: Ja
Weitere Informationen
Application Verifier – Stoppcodes und Definitionen
Application Verifier – Übersicht
Application Verifier – Features
Application Verifier – Testen von Anwendungen
Application Verifier – Tests in Application Verifier
Application Verifier – Debuggen der Anwendungsüberprüfung wird beendet