Aracılığıyla paylaş


Uygulama Doğrulayıcı - Durdurma Kodları - Hizmetler

Hizmet testleri, Windows Hizmetleri'nin uygun şekilde kullan olup olmadığını kontrol edin. Örneğin, hizmetlerin düzgün bir şekilde başlatılıp durdurulduğu. Windows Hizmetleri hakkında daha fazla bilgi için bkz. Services.

Aşağıdaki durdurma kodları bu test kümesinde yer alır.

Unicode olmayan bir API kullanma (ör. RegisterServiceCtrlHandlerW yerine RegisterServiceCtrlHandlerA)

olası nedeni

Büyük olasılıkla uygulama tanımlı UNICODE makro ile derlenmemiştir ve bu nedenle Unicode olmayan arabirimler kullanılır.

Uygulama Doğrulayıcı tarafından görüntülenen Bilgileri
  • Biçimi: -  API adı %ws
  • Parametre 1 - Kullanılmıyor.
  • Parametre 2 - Kullanılmıyor.
  • Parametre 3 - Kullanılmıyor.
  • Parametre 4 - Kullanılmıyor.

Ek Bilgi
  • Test Katmanı: Hizmeti
  • Durdurma Kimliği: USING_NON_UNICODE_API
  • Durdurma kodu: 4000000
  • Önem Derecesi: Hatası
  • Tek seferlik hata: hayır
  • Hata raporu: Kesme
  • Dosyaya : evet
  • Geri iz oluşturma: evet

StartServiceCtrlDispatcher API'si ikinci kez çağrılır

olası nedeni

Bu API, hizmet wmain işlevinin başlangıcında yalnızca bir kez çağrılmaya yöneliktir.

Uygulama Doğrulayıcı tarafından görüntülenen Bilgileri
  • Biçimi: -  API adı %ws
  • Parametre 1 - SERVICE_TABLE_ENTRY parametresi.
  • Parametre 2 - Kullanılmıyor.
  • Parametre 3 - Kullanılmıyor.
  • Parametre 4 - Kullanılmıyor.

Ek Bilgi
  • Test Katmanı: Hizmeti
  • Durdurma Kimliği: CTRL_DISPATCHER_CALLED_TWICE
  • Durdurma kodu: 4000001
  • Önem Derecesi: Hatası
  • Tek seferlik hata: hayır
  • Hata raporu: Kesme
  • Dosyaya : evet
  • Geri iz oluşturma: evet

SetServiceStatus'a geçersiz SERVICE_STATUS tanıtıcısı geçiriliyor

olası nedeni

SetServiceStatus'a geçersiz SERVICE_STATUS tanıtıcısı geçiriliyor.

Uygulama Doğrulayıcı tarafından görüntülenen Bilgileri
  • Biçimi: -  API adı %ws
  • Parametre 1 - SERVICE_STATUS_HANDLE değeri.
  • Parametre 2 - Kullanılmıyor.
  • Parametre 3 - Kullanılmıyor.
  • Parametre 4 - Kullanılmıyor.

Ek Bilgi
  • Test Katmanı: Hizmeti
  • Durdurma Kimliği: INVALID_SERVICE_STATUS_HANDLE
  • Durdurma kodu: 4000002
  • Önem Derecesi: Hatası
  • Tek seferlik hata: hayır
  • Hata raporu: Kesme
  • Dosyaya : evet
  • Geri iz oluşturma: evet

SetServiceStatus iki iş parçacığından çağrılır

olası nedeni

Bu API'nin seri olarak çağrılmak üzere tasarlanması gerekir.

Uygulama Doğrulayıcı tarafından görüntülenen Bilgileri
  • Biçimi: -  API adı %ws %ws hizmetinden eşzamanlı olarak çağrılır
  • Parametre 1 - LPSERVICE_STATUS değer geçirildi.
  • Parametre 2 - Kullanılmıyor.
  • Parametre 3 - Kullanılmıyor.
  • Parametre 4 - Kullanılmıyor.

Ek Bilgi
  • Test Katmanı: Hizmeti
  • Durdurma Kimliği: SET_SERVICE_STATUS_RACE
  • Durdurma kodu: 4000003
  • Önem Derecesi: Hatası
  • Tek seferlik hata: hayır
  • Hata raporu: Kesme
  • Dosyaya : evet
  • Geri iz oluşturma: evet

Hizmet START_PENDING durumdayken STOP/SHUTDOWN denetimleri kabul ediliyor

olası nedeni

Çoğu hizmet başlatma sırasında durdurma/kapatma denetimlerini kabul edemez

Uygulama Doğrulayıcı tarafından görüntülenen Bilgileri
  • Biçimi: -  Hizmet adı: %ws dwControlsAccepted: %08X
  • Parametre 1 - LPSERVICE_STATUS değer geçirildi.
  • Parametre 2 - Kullanılmıyor.
  • Parametre 3 - Kullanılmıyor.
  • Parametre 4 - Kullanılmıyor.

Ek Bilgi
  • Test Katmanı: Hizmeti
  • Durdurma Kimliği: STOP_SHUTDOWN_ACCEPTED
  • Durdurma kodu: 4000004
  • Önem Derecesi: Uyarısı
  • Tek seferlik hata: hayır
  • Hata raporu: Yok
  • Dosyaya : evet
  • Geri iz oluşturma: evet

HİzMET geçersiz durum geçişi deneniyor

olası nedeni

Hizmet geçersiz bir durum geçişi gerçekleştirmeye veya aynı durum parametrelerini ayarlamaya çalıştı

Uygulama Doğrulayıcı tarafından görüntülenen Bilgileri
  • Biçimi: -  Hizmeti %ws geçersiz durum geçişi girişiminde bulundu
  • Parametre 1 - Geçerli Durumu LPSERVICE_STATUS.
  • Parametre 2 - Yeni Durum LPSERVICE_STATUS.
  • Parametre 3 - Last SetServiceStatus yığın izlemesi.
  • Parametre 4 - Kullanılmıyor.

Ek Bilgi
  • Test Katmanı: Hizmeti
  • Durdurma Kimliği: INVALID_STATE_TRANSITION
  • Durdurma kodu: 4000005
  • Önem Derecesi: Hatası
  • Tek seferlik hata: hayır
  • Hata raporu: Kesme
  • Dosyaya : evet
  • Geri iz oluşturma: evet

SERVICE aynı durum parametrelerini ayarlamaya çalışır

olası nedeni

Hizmet aynı durum parametrelerini ayarlamaya çalıştı

Uygulama Doğrulayıcı tarafından görüntülenen Bilgileri
  • Biçimi: -  Hizmet %ws aynı durum parametrelerini ayarlamaya çalıştı
  • Parametre 1 - Geçerli Durumu LPSERVICE_STATUS.
  • Parametre 2 - Yeni Durum LPSERVICE_STATUS.
  • Parametre 3 - Last SetServiceStatus yığın izlemesi.
  • Parametre 4 - Kullanılmıyor.

Ek Bilgi
  • Test Katmanı: Hizmeti
  • Durdurma Kimliği: DUPLICATE_STATE_PARAMS
  • Durdurma kodu: 4000006
  • Önem Derecesi: Uyarısı
  • Tek seferlik hata: hayır
  • Hata raporu: Yok
  • Dosyaya : evet
  • Geri iz oluşturma: evet

SERVICE, DURDURULDU durumuna girdikten sonra bekleyen iş parçacıklarını bırakıyor

olası nedeni

Hizmet, DURDURULDU durumu bildirildikten sonra bekleyen iş parçacıklarını bırakıyor

Uygulama Doğrulayıcı tarafından görüntülenen Bilgileri
  • Biçimi: -  Service %ws iş parçacıkları sızdırıyor
  • Parametre 1 - sızdırılan iş parçacığının İş Parçacığı Kimliği.
  • Parametre 2 - Hizmet Etiketi.
  • Parametre 3 - Kullanılmıyor.
  • Parametre 4 - Kullanılmıyor.

Ek Bilgi
  • Test Katmanı: Hizmeti
  • Durdurma Kimliği: LEAKED_THREAD
  • Durdurma kodu: 4000007
  • Önem Derecesi: Hatası
  • Tek seferlik hata: hayır
  • Hata raporu: Kesme
  • Dosyaya : evet
  • Geri iz oluşturma: evet

Ayrıca Bkz.

Uygulama Doğrulayıcı - Durdurma Kodları ve Tanımları

Uygulama Doğrulayıcı - Genel Bakış

Uygulama Doğrulayıcı - Özellikler

Uygulama Doğrulayıcı - Test Uygulamaları

Uygulama Doğrulayıcı - Uygulama Doğrulayıcı içindeki testler

Uygulama Doğrulayıcı - Hata Ayıklama Uygulama Doğrulayıcı durduruluyor

Uygulama Doğrulayıcı - Sık Sorulan Sorular