Sdílet prostřednictvím


Ověřovatel aplikací – Kódy zastavení – Služby

Služby testují, zkontrolujte správné použití služeb systému Windows. Například že se služby spouští a zastavují správně. Další informace o službách systému Windows naleznete v tématu Services.

V této sadě testů jsou obsaženy následující kódy stop.

Použití jiného rozhraní API než Unicode (např. RegisterServiceCtrlHandlerA místo RegisterServiceCtrlHandlerW)

pravděpodobné příčiny

Pravděpodobně nebyla aplikace zkompilována s definovaným makrem UNICODE, a proto se používají jiná rozhraní než Unicode.

Informace zobrazené ověřovatelem aplikací
  • Formát : – název rozhraní API  %ws
  • Parametr 1 – Nepoužívá se.
  • Parametr 2 – Nepoužívá se.
  • Parametr 3 – Nepoužívá se.
  • Parametr 4 – Nepoužívá se.

další informace
  • testovací vrstva : služba 
  • ID zastavení : USING_NON_UNICODE_API
  • zastavit kód: 4000000
  • závažnost : chyba 
  • jednorázová chyba: ne
  • Zpráva o chybě : přerušení 
  • Protokol do souboru: ano
  • Vytvořit backtrace: ano

Rozhraní API StartServiceCtrlDispatcher se volá podruhé

pravděpodobné příčiny

Toto rozhraní API se má volat pouze jednou na začátku funkce wmain služby.

Informace zobrazené ověřovatelem aplikací
  • Formát : – název rozhraní API  %ws
  • Parametr 1 – parametr SERVICE_TABLE_ENTRY.
  • Parametr 2 – Nepoužívá se.
  • Parametr 3 – Nepoužívá se.
  • Parametr 4 – Nepoužívá se.

další informace
  • testovací vrstva : služba 
  • ID zastavení : CTRL_DISPATCHER_CALLED_TWICE
  • zastavit kód: 4000001
  • závažnost : chyba 
  • jednorázová chyba: ne
  • Zpráva o chybě : přerušení 
  • Protokol do souboru: ano
  • Vytvořit backtrace: ano

Do rutiny SetServiceStatus se předává neplatný popisovač SERVICE_STATUS

pravděpodobné příčiny

Do rutiny SetServiceStatus se předává neplatný popisovač SERVICE_STATUS.

Informace zobrazené ověřovatelem aplikací
  • Formát : – název rozhraní API  %ws
  • Parametr 1 – hodnota SERVICE_STATUS_HANDLE.
  • Parametr 2 – Nepoužívá se.
  • Parametr 3 – Nepoužívá se.
  • Parametr 4 – Nepoužívá se.

další informace
  • testovací vrstva : služba 
  • ID zastavení : INVALID_SERVICE_STATUS_HANDLE
  • zastavit kód: 4000002
  • závažnost : chyba 
  • jednorázová chyba: ne
  • Zpráva o chybě : přerušení 
  • Protokol do souboru: ano
  • Vytvořit backtrace: ano

SetServiceStatus se volá ze dvou vláken

pravděpodobné příčiny

Toto rozhraní API se má volat sériově.

Informace zobrazené ověřovatelem aplikací
  • Formát : – %ws název rozhraní API  se volá souběžně ze služby %ws
  • Parametr 1 – LPSERVICE_STATUS hodnota byla předána.
  • Parametr 2 – Nepoužívá se.
  • Parametr 3 – Nepoužívá se.
  • Parametr 4 – Nepoužívá se.

další informace
  • testovací vrstva : služba 
  • ID zastavení : SET_SERVICE_STATUS_RACE
  • zastavit kód: 4000003
  • závažnost : chyba 
  • jednorázová chyba: ne
  • Zpráva o chybě : přerušení 
  • Protokol do souboru: ano
  • Vytvořit backtrace: ano

Ovládací prvky STOP/SHUTDOWN se přijímají, když je služba ve stavu START_PENDING

pravděpodobné příčiny

Většina služeb nemůže přijmout ovládací prvky zastavení/vypnutí během inicializace.

Informace zobrazené ověřovatelem aplikací
  • Formát : – název služby : %ws dwControlsAccepted: %08X
  • Parametr 1 – LPSERVICE_STATUS hodnota byla předána.
  • Parametr 2 – Nepoužívá se.
  • Parametr 3 – Nepoužívá se.
  • Parametr 4 – Nepoužívá se.

další informace
  • testovací vrstva : služba 
  • ID zastavení : STOP_SHUTDOWN_ACCEPTED
  • zastavit kód: 4000004
  • závažnost : upozornění 
  • jednorázová chyba: ne
  • Zpráva o chybě : Žádná
  • Protokol do souboru: ano
  • Vytvořit backtrace: ano

SLUŽBA se pokouší o neplatný přechod stavu

pravděpodobné příčiny

Služba se pokusila provést neplatný přechod stavu nebo nastavit stejné parametry stavu.

Informace zobrazené ověřovatelem aplikací
  • Formát : –  služba %ws byla nalezena při pokusu o neplatný přechod stavu.
  • Parametr 1 – LPSERVICE_STATUS aktuální stav.
  • Parametr 2 – LPSERVICE_STATUS Nový stav.
  • parametr 3 – trasování zásobníku Last SetServiceStatus.
  • Parametr 4 – Nepoužívá se.

další informace
  • testovací vrstva : služba 
  • ID zastavení : INVALID_STATE_TRANSITION
  • zastavit kód: 4000005
  • závažnost : chyba 
  • jednorázová chyba: ne
  • Zpráva o chybě : přerušení 
  • Protokol do souboru: ano
  • Vytvořit backtrace: ano

SLUŽBA se pokouší nastavit identické parametry stavu.

pravděpodobné příčiny

Služba se pokusila nastavit identické parametry stavu.

Informace zobrazené ověřovatelem aplikací
  • Formát : –  služba %ws pokusila nastavit stejné parametry stavu
  • Parametr 1 – LPSERVICE_STATUS aktuální stav.
  • Parametr 2 – LPSERVICE_STATUS Nový stav.
  • parametr 3 – trasování zásobníku Last SetServiceStatus.
  • Parametr 4 – Nepoužívá se.

další informace
  • testovací vrstva : služba 
  • ID zastavení : DUPLICATE_STATE_PARAMS
  • zastavit kód: 4000006
  • závažnost : upozornění 
  • jednorázová chyba: ne
  • Zpráva o chybě : Žádná
  • Protokol do souboru: ano
  • Vytvořit backtrace: ano

SLUŽBA po zadání stavu ZASTAVENO ponechá nevyřízená vlákna.

pravděpodobné příčiny

Služba ponechá nevyřízená vlákna po deklarování stavu ZASTAVENO.

Informace zobrazené ověřovatelem aplikací
  • Formát : –  Služba %ws nevracení vláken
  • Parametr 1 – ID vlákna nevráceného vlákna.
  • Parametr 2 – značka služby .
  • Parametr 3 – Nepoužívá se.
  • Parametr 4 – Nepoužívá se.

další informace
  • testovací vrstva : služba 
  • ID zastavení : LEAKED_THREAD
  • zastavit kód: 4000007
  • závažnost : chyba 
  • jednorázová chyba: ne
  • Zpráva o chybě : přerušení 
  • Protokol do souboru: ano
  • Vytvořit backtrace: ano

Viz také

Application Verifier – kódy stop a definice

Application Verifier – přehled

Application Verifier – funkce

Application Verifier – Testování aplikací

Application Verifier – testy v rámci

Application Verifier – Ladění ověřovatele aplikací zastaví

application Verifier – nejčastější dotazy