ΕΠΙΔΙΌΡΘΩΣΗ: Λαμβάνετε ένα "σφάλμα 1053: Η υπηρεσία δεν αποκρίθηκε στην αίτηση εκκίνησης ή ελέγχου έγκαιρα" μήνυμα λάθους όταν διακοπή ή παύση μια διαχειριζόμενη υπηρεσία των Windows

Σφάλμα #: 2302 (Visual Studio QFE)

Συμπτώματα

Όταν μπορείτε να σταματήσετε ή να διακόψετε μια διαχειριζόμενη υπηρεσία Microsoft Windows και η διαδικασία διακοπή ή παύση της υπηρεσίας διαρκεί περισσότερο χρόνο από την προεπιλεγμένη ρύθμιση παραμέτρων φορά, λαμβάνετε το ακόλουθο μήνυμα λάθους:
Δεν ήταν δυνατή η διακοπή της υπηρεσίας όνομα υπηρεσίας των Windows στον τοπικό υπολογιστή.
Σφάλμα 1053: Η υπηρεσία δεν αποκρίθηκε στην αίτηση εκκίνησης ή ελέγχου έγκαιρα.
Σημείωση Όνομα υπηρεσίας των Windows είναι ένα σύμβολο κράτησης θέσης για το όνομα της υπηρεσίας Windows που έχετε δημιουργήσει.

Αιτία

Η κλάση ServiceBase καλεί τη μέθοδο OnStop απευθείας από το δείκτη χειρισμού εντολής υπηρεσία που ορίζεται για το ScDispatcherLoop του αρχείου Advapi32.dll. Μετά από 30 δευτερόλεπτα, αν το νήμα ScDispatcherLoop δεν είναι έτοιμη να λάβει μια νέα εντολή υπηρεσίας από τη Διαχείριση ελέγχου υπηρεσίας, ελεγκτή υπηρεσίας των Windows επισημαίνει την υπηρεσία ως "χρονικό όριο". Επομένως, θα εμφανιστεί αυτό το μήνυμα λάθους.

Προτεινόμενη αντιμετώπιση

Για να επιλύσετε αυτό το ζήτημα, αποκτήστε το πιο πρόσφατο service pack για το Microsoft .NET Framework 1.1. Για πρόσθετες πληροφορίες, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
885055 τον τρόπο απόκτησης του Microsoft .NET Framework 1.1 Service Pack 1

Κατάσταση

Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα πρόβλημα στα προϊόντα της Microsoft που παρατίθενται στην ενότητα "Ισχύει για". Το ζήτημα αυτό διορθώθηκε αρχικά στο Microsoft .NET Framework 1.1 Service Pack 1.

Περισσότερες πληροφορίες

Βήματα για την αναπαραγωγή της συμπεριφοράς

  1. Δημιουργία έργου υπηρεσία των Windows. Για να το κάνετε αυτό, ακολουθήστε τα εξής βήματα:
    1. Χρησιμοποιήστε το Microsoft Visual Basic .NET για να δημιουργήσετε ένα έργο υπηρεσία των Windows. Το όνομα της υπηρεσίας Windows SampleWS.
    2. Στο παράθυρο "Ιδιότητες" του SampleWS, ορίστε την ιδιότητα CanPauseAndContinue , η ιδιότητα CanShutDown και την ιδιότητα CanStop στην τιμή True.
    3. Ορίστε την ιδιότητα ServiceName SampleWS.
    4. Στην προβολή code του αρχείου Service1.vb, προσθέστε τον ακόλουθο κώδικα στην αρχή του αρχείου για να εισαγάγετε το χώρο ονομάτων System.Threading στο έργο.
      Imports System.Threading
    5. Προσθέστε μια μέθοδο OnPause στο αρχείο Service1.vb.
    6. Προσθέστε τον ακόλουθο κώδικα στη μέθοδο OnStop και με τη μέθοδο OnPause .
      Thread.Sleep(40000)
    7. Προσθέστε το πρόγραμμα εγκατάστασης του ServiceProcessInstaller1 και το πρόγραμμα εγκατάστασης ServiceInstaller1 στο έργο σας SampleWS.
    8. Στο παράθυρο ιδιοτήτων του προγράμματος εγκατάστασης ServiceProcessInstaller1 , ορίστε την ιδιότητα λογαριασμού του προγράμματος εγκατάστασης ServiceProcessInstaller1 σε LocalSystem.
    9. Στο παράθυρο ιδιοτήτων του προγράμματος εγκατάστασης ServiceInstaller1 , ορίστε την ιδιότητα StartType σε αυτόματο.
    10. Δημιουργία της εφαρμογής SampleWS.
  2. Δημιουργία έργου εγκατάστασης (Setup) και, στη συνέχεια, προσθέστε το αποτέλεσμα της εφαρμογής SampleWS στο έργο της εγκατάστασης (Setup).
  3. Δημιουργήστε το διάλυμα SampleWS.
  4. Εντοπίστε το αρχείο Setup1.msi. Αυτό το αρχείο βρίσκεται στο φάκελο έργου εγκατάστασης1 που δημιουργήθηκε στο βήμα 2.
  5. Κάντε διπλό κλικ στο αρχείο Setup1.msi για να εγκαταστήσετε την υπηρεσία SampleWS των Windows.
  6. Κάντε κλικ στο κουμπί Έναρξη, επιλέξτε Εκτέλεση, πληκτρολογήστε services.msc στο πλαίσιο Άνοιγμα και, στη συνέχεια, κάντε κλικ στο κουμπί OK. Το συμπληρωματικό πρόγραμμα υπηρεσίες της κονσόλας διαχείρισης της Microsoft (MMC) ανοίγει.
  7. Στο δεξιό τμήμα του παραθύρου, εντοπίστε την υπηρεσία SampleWS και, στη συνέχεια, ξεκινήστε την υπηρεσία.
  8. Σταματήσετε ή να διακόψετε την υπηρεσία SampleWS.
Παρατηρήστε το ζήτημα που αναφέρεται στην ενότητα "Συμπτώματα".

Για πρόσθετες πληροφορίες, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
824684 Περιγραφή της βασικής ορολογίας που χρησιμοποιείται για την περιγραφή ενημερώσεων λογισμικού της Microsoft

Αναφορές

Για περισσότερες πληροφορίες σχετικά με τον τρόπο δημιουργίας μιας υπηρεσίας των Windows, επισκεφθείτε την ακόλουθη τοποθεσία του Microsoft Developer Network (MSDN) στο Web:
Ιδιότητες

Αναγνωριστικό άρθρου: 839174 - Τελευταία αναθεώρηση: 17 Ιαν 2017 - Αναθεώρηση: 1

Σχόλια