FOUT 1053 De Service reageerde niet op een tijdige mode

Ik heb een service een aantal keer gemaakt en geïnstalleerd. Aanvankelijk werkte het prima, maar na enkele wijzigingen in de servicecode start het de fout bij het opnieuw opstarten van de service in services.msc:

FOUT 1053: De service reageerde niet op een tijdige mode

Code:

public partial class AutoSMS : ServiceBase
{
    public AutoSMS()
    {
        InitializeComponent();
        eventLog1.Clear();
        if (!System.Diagnostics.EventLog.SourceExists("MySource"))
        {
            System.Diagnostics.EventLog.CreateEventSource(
                "MySource", "MyNewLog");
        }
        eventLog1.Source = "MySource";
        eventLog1.Log = "MyNewLog";
        Timer checkForTime = new Timer(5000);
        checkForTime.Elapsed += new ElapsedEventHandler(checkForTime_Elapsed);
        checkForTime.Enabled = true;
    }
    protected override void OnStart(string[] args)
    {
        eventLog1.WriteEntry("In OnStart");
    }
    protected override void OnStop()
    {
        eventLog1.WriteEntry("In onStop.");
    }
    void checkForTime_Elapsed(object sender, ElapsedEventArgs e)
    {
        string Time = "15:05:00";
        DateTime dateTime = DateTime.ParseExact(Time, "HH:mm:ss",
                                        CultureInfo.InvariantCulture);
        if (DateTime.Now == dateTime) ;
            eventLog1.WriteEntry(Time);
    }
}

Hier is mijn hoofdmethodecode

static void Main()
{
    ServiceBase[] ServicesToRun;
    ServicesToRun = new ServiceBase[] 
    { 
        new AutoSMS() 
    };
    ServiceBase.Run(ServicesToRun);
}

Ik heb ook de volgende stappen geprobeerd:

  • Ga naar Start > Uitvoeren > en typ regedit
  • Navigeer naar: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control
  • Klik met de controlemap geselecteerd met de rechtermuisknop in het rechterdeelvenster en – selecteer nieuwe DWORD-waarde
  • Noem de nieuwe DWORD: ServicesPipeTimeout
  • Klik met de rechtermuisknop op ServicesPipeTimeout en klik vervolgens op Wijzigen
  • Klik op Decimaal, typ ‘180000’ en klik vervolgens op OK
  • Start de computer opnieuw op

Vroeger installeerde en de-installeerde ik het met het volgende commando:

installutil AutoSMS.exe
installutil /u AutoSMS.exe

Antwoord 1, autoriteit 100%

In mijn geval was ik de publicatieservice aan het publiceren terwijl deze zich in de foutopsporingsmodus bevond.

Oplossing was:

  • Oplossing wijzigen in release-modus
  • Verwijder de oude service met het commando InstallUtil -u WindowsServiceName.exe
  • service opnieuw installeren InstallUtil -i WindowsServiceName.exe

Het werkte daarna perfect.


Antwoord 2, autoriteit 72%

Zoals anderen al hebben opgemerkt, kan deze fout een groot aantal oorzaken hebben. Maar in de hoop dat dit iemand zal helpen, zal ik vertellen wat er in ons geval is gebeurd. Voor ons was onze service geüpgraded naar .NET 4.5, maar de server had geen .NET 4.5 geïnstalleerd.


Antwoord 3, autoriteit 62%

Na wat tijd te hebben besteed aan het probleem en oplossingen geprobeerd te hebben die niet werkten, kwam ik deze blog. Het stelt voor om de service-initialisatiecode in een try/catch-blok te plaatsen, zoals dit, en EventLog toe te voegen

using System;
using System.Diagnostics;
using System.ServiceProcess;
namespace WindowsService
{
    static class Program
    {
        static void Main()
        {
            try
            {
                ServiceBase[] ServicesToRun;
                ServicesToRun = new ServiceBase[] 
                { 
                    new Service1() 
                };
                ServiceBase.Run(ServicesToRun);
            }
            catch (Exception ex)
            {
                EventLog.WriteEntry("Application", ex.ToString(), EventLogEntryType.Error);
            }
        }
    }
}

Verwijder vervolgens de oude service en implementeer de service opnieuw met deze aanpassingen. Start de service en bekijk de Logboeken/Applicatielogboeken. Je zult zien wat het echte probleem is, wat de onderliggende reden is voor de time-out.


Antwoord 4, autoriteit 28%

Ik kwam hetzelfde probleem tegen en wist helemaal niet hoe ik het moest oplossen. Ja, dit gebeurt omdat er een uitzondering wordt gegenereerd door de service, maar er zijn een paar algemene richtlijnen die u kunt volgen om dit te corrigeren:

  • Controleer of je de juiste code hebt geschreven om de service te starten:

    ServiceBase[] ServicesToRun;
    ServicesToRun = new ServiceBase[]
    {
    new WinsowsServiceToRun()
    };
    ServiceBase.Run(ServicesToRun);
  • U moet ervoor zorgen dat er een soort oneindige lus is die in de klasse Winsowservicetorun

  • is

  • Ten slotte kan er een code zijn die niets aanmeldt en het programma abrupt sluit (wat het geval met mij was), in dit geval moet u de oude school van debuggen volgen die nodig zijn om een ​​te schrijven regel naar een bron (tekst / dB / waar). Wat ik heb geconfronteerd, was dat sinds de rekeningen die de service draait niet “admin” was, de code viel gewoon af en logt geen uitzonderingen in als het probeerde te schrijven naar “Windows-gebeurtenislogboek”, ook al was de code om uitzonderingen te loggen . Admin Privilege is eigenlijk niet nodig om inloggen om te loggen, maar het is nodig om de bron te definiëren. In het geval dat de bron van het evenement nog niet is gedefinieerd in het systeem en probeert de service het voor de eerste keer te loggen zonder beheerdersrechten. Om dit volgen hieronder stappen op te lossen:

    1. Open opdrachtprompt met admin-privilege
    2. Plak de opdracht: eventcreate /ID 1 /L APPLICATION /T INFORMATION /SO <<Source>> /D "<<SourceUsingWhichToWrite>>"
    3. Druk op ENTER
    4. Start nu de service

Antwoord 5, Autoriteit 26%

Ik heb deze code net geprobeerd in .NET 4.5 en de service start en stopt correct voor mij. Ik vermoed dat uw probleem kan zijn rond het maken van de EVENLOG-bron.

De methode:

EventLog.SourceExists("MySource")

vereist dat de gebruiker die de code uitvoert een beheerder moet zijn, volgens de documentatie hier:

http://msdn.microsoft. com / EN-US / Library / X7Y6SY21 (v = vs.110) .aspx

Controleer of de service wordt uitgevoerd als een gebruiker met beheerdersrechten.


Antwoord 6, autoriteit 18%

Het is vanwege de Microsoft Windows Service Control, het controleert soms de status van de services. Als de service binnen 30 seconden geen antwoord stuurt, krijgt u deze foutmelding.

U kunt het register aanpassen, zodat de service meer tijd heeft om te reageren

Go to Start > Run > and type regedit
Navigate to: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control
With the control folder selected, right click in the pane on the right and select new DWORD Value
Name the new DWORD: ServicesPipeTimeout 
Right-click ServicesPipeTimeout, and then click Modify
Click Decimal, type '180000', and then click OK
Restart the computer

Of zorg ervoor dat er op dat moment geen ander proces met de service praat, misschien is er een conflict dat ik niet ken


Antwoord 7, autoriteit 13%

Na te veel tijd aan dit probleem te hebben besteed. Ik ontdekte dat de EventLogal die rotzooi veroorzaakte, hoewel ik het correct gebruikte.

Wie dit probleem ook aanpakt, ik raad je aan om de EventLogte verwijderen.
Gebruik betere tools zoals “log4net“.


Antwoord 8, autoriteit 10%

Ik kreeg precies hetzelfde probleem. Ik heb alleen de Debug-modus gewijzigd in Release tijdens het compileren van de dll. Dit heeft mijn probleem opgelost, hoe/waarom? Ik weet het niet, ik heb al een vraagover SO


Antwoord 9, autoriteit 10%

U moet ook de inhoud van uw configuratiebestand controleren.

U moet het gedeelte hieronder controleren.

<startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2"/>
</startup>

COZ bovenstaande sectie moet overeenkomen met het Framework van uw .NET.


Antwoord 10, Autoriteit 10%

In het geval dat ik vanmorgen tegenkwam, was de Culprit een misvormd configuratiebestand. Het configuratiebestand had een nauwe reactie-tag zonder de Open Commentaar-tag. Controleer dus uw configuratie-bestanden voor fouten.


Antwoord 11, Autoriteit 5%

Controleer ConnectionStringsAls u EntityFrameworkof een andere middelen gebruikt om database-aansluitingen te initiëren bij het opstarten van de dienst.

In mijn geval toen ik de foutmelding had Error 1053 the service did not respond to the start or control request in a timely fashiondit is wat er misgaat is:

Ik gebruikte entiteitsframework en had de verbindingssnaren verkeerd. Dus in principe bij het opstarten kan het entiteitswerk geen verbinding maken met de database met behulp van de onjuiste verbindingsreeks en verlopen.

moest gewoon de database-verbindingsreeks vervangen door de juiste en het werkte prima.

had helemaal geen framework-update of een andere systeem / configuratiewijziging nodig.


Antwoord 12, Autoriteit 5%

Dit werkte voor mij. Zorg in principe of de gebruikerslogboek op de juiste is ingesteld. Het is echter afhankelijk van hoe de accountinfrastructuur is ingesteld. In mijn voorbeeld gebruikt het advertentie-gebruikersreferenties.

In het opstarten Menu Zoeken naar ‘Services’
-In services vinden de vereiste service
– Klik op en selecteer het tabblad Aanmelden
-Selecteer ‘dit account’ en voer de vereiste inhoud / inloggegevens in
-OK het en start de service zoals gewoonlijk


Antwoord 13, Autoriteit 5%

Ik heb .NET 4.6 op mijn WindowsServer-computer geïnstalleerd en de fout is vastgesteld.

Uw besturing moet op deze manier zijn:

  1. Controleer de .NET-versie van uw WindowsService
  2. Controleer vervolgens de .NET-versie van uw computer
  3. match die versie, omdat het waarschijnlijk niet is gekoppeld

Antwoord 14, Autoriteit 5%

Als u een .NET-kern 3.1 uitvoerbaar wilt registreren als Windows-service, zorg er dan voor dat u het Nuget-pakket Microsoft.extsion.hosting.Windowservices in versie 3.1.7 of hoger hebt toegevoegd en de hostbuilder zoals in het volgende initialiseert Voorbeeld:

using Microsoft.Extensions.Hosting;
namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] arguments)
        {
            IHostBuilder hostBuilder = Host.CreateDefaultBuilder(arguments);
            hostBuilder.UseWindowsService();
            hostBuilder.Build().Run();
        }
    }
}

Nu kunt u het uitvoerbare bestand installeren en het starten als een Windows-service:

sc.exe create ConsoleApp1 binPath= "<BIN_PATH>\ConsoleApp1.exe"

Antwoord 15, Autoriteit 3%

Een van mogelijke oplossingen voor dit probleem [IT-probleem aan mijn einde en mijn aanvraag is Java -gebaseerde toepassing]:

1) Controleer uw toepassing is wijzen naar de juiste Java-versie (controleer de Java-versie en het pad in uw toepassing).

of

2) Controleer de geconfigureerde Java-versie I.E Controleer of het 32-bits versie of 64-bits versie is (op basis van uw aanvraag). Als u 32-bits gebruikt, moet u 32-bits versie JSL gebruiken, anders zal JSL dit probleem veroorzaken.


Antwoord 16, Autoriteit 3%

Dit wordt meestal veroorzaakt door een afgevangen uitzondering in de dienst zelf. (Configuratiebestandsfouten, bijvoorbeeld). Het openen van een opdrachtprompt en het starten van het gebruik van de service Handmatig onthult Misschien de uitzondering opgeworpen.


Antwoord 17, Autoriteit 3%

In mijn ervaring moest ik mijn bestaande service stoppen om code bij te werken. Na het bijwerken van de code en terwijl ik de service start, kreeg ik dezelfde fout “Fout 1053 de service reageerde niet op een tijdige manier op het start- of controleverzoek”.

Maar dit werd opgelost na het herstarten van de machine.


Antwoord 18, Autoriteit 3%

Ik weet dat dit oude vraag is,
Ik schreef mijn eigen VB.net Windows-service en het heeft geen probleem om te beginnen met MS Windows 7 en MS Windows 10.

Ik heb dit probleem wanneer ik de Windows-services installeer op de nieuwste MS Windows 10-patch. De reden waarom de Windows-service niet wordt uitgevoerd, is omdat de .NET-versie die nodig is voor het uitvoeren van Windows-services niet in de geïnstalleerde pc wordt gepresenteerd.

Nadat u de Windows-services hebt geïnstalleerd. Ga naar de installatieomslag bijvoorbeeld C: \ Program Files (X86) \ Service1 \ Service1.exe en dubbelklik om het uit te voeren. Als er ontbreekt .NET Framework-pakket, wordt de gebruiker ertoe aangezet het te downloaden. Gewoon downloaden en wachten tot het installeert.

Hierna start de Windows-services opnieuw op in Diensten.mSc.
Ik hoop dat dit antwoord iemand zal helpen die het probleem tegenkomt. Ik weet dat het probleem wordt veroorzaakt door .NET Framework-versie.


Antwoord 19, Autoriteit 3%

Ik krabde mijn hoofd om deze fout te wissen
Deze fout kan worden veroorzaakt als u het debuggen in de code zoals

static void Main()
{
 #if DEBUG
            MailService service = new MailService();
             service.Ondebug();
 #else
             ServiceBase[] ServicesToRun;
             ServicesToRun = new ServiceBase[]
             {
                 new MailService()
             };
             ServiceBase.Run(ServicesToRun);
 #endif
         }
     }

Na het verwijderen van de if,elseen endifin de code als de fout niet opnieuw verschenen …. hoop dat het helpt ….

static void Main()
{
    ServiceBase[] ServicesToRun;
    ServicesToRun = new ServiceBase[]
    {
        new MailService()
    };
    ServiceBase.Run(ServicesToRun);
}

Antwoord 20

In mijn geval, het probleem was over het cachen van de configuratie die is ingesteld in het bestand App.config. Zodra ik onder lijnen uit het bestand App.config verwijderd, werd het probleem opgelost.

<cachingConfiguration defaultCacheManager="MyCacheManager">
<cacheManagers>
  <add name="MyCacheManager" type="Microsoft.Practices.EnterpriseLibrary.Caching.CacheManager, Microsoft.Practices.EnterpriseLibrary.Caching, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
       expirationPollFrequencyInSeconds="60"
       maximumElementsInCacheBeforeScavenging="50000"
       numberToRemoveWhenScavenging="1000"
       backingStoreName="NullBackingStore" />
</cacheManagers>
<backingStores>
  <add type="Microsoft.Practices.EnterpriseLibrary.Caching.BackingStoreImplementations.NullBackingStore, Microsoft.Practices.EnterpriseLibrary.Caching, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
       name="NullBackingStore" />
</backingStores>


Antwoord 21

Ik heb

verwijderd

eventlog.exist

en vast.


Antwoord 22

In mijn geval had ik blijkbaar enkele extra symbolen in mijn app.config-bestand dat ik niet heb gemeld bij het bouwen van mijn oplossing.
Dus raad ik aan om het configuratiebestand voor fouten te controleren voordat u stappen onderneemt met het wijzigen van registersleutels, het schakelen van configuratiemodi, enz.


Antwoord 23

Ik had twee diensten die per ongeluk zijn gekoppeld met dezelfde eventsource eventLog.Source = "MySource";Na het verwijderen van beide services en het opnieuw installeren van degene die leed aan de fout 1053, startte mijn service normaal.


Antwoord 24

Controleer of de SERVICE-startcode correct is,

ServiceBase[] ServicesToRun;
ServicesToRun = new ServiceBase[] 
{ 
    new WinsowsServiceToRun() 
};
ServiceBase.Run(ServicesToRun);

Verwijder ook debug-codes.
IE,

 #If Debug
         ...
         ...
         ...
        #else
         ...
         ...
        #endif

Antwoord 25

Ik had hetzelfde probleem.
Schakel het klikken “zing het Clickonce-manifest”, “teken de montage” en “ClickOnce-beveiligingsinstellingen inschakelen” in projecteigenschappen geholpen


Antwoord 26

Mijn probleem was degene met appsettings.jsonNIET KOPIËREN NAAR DE UITBOUWSMAP VAN DE BOUW OPDRUKKEN TIJDENS BOUW EN EENVOUDIG IN DE ...\bin\ReleaseMAPPELING EN KOPIËRING launchSettings.jsonInhoud tot appsettings.jsonOpgelost het probleem voor mij.


Antwoord 27

Ik had hetzelfde probleem.
Het lijkt erop dat bij het starten van de service de hoofdthread niet de belangrijkste werkthread zou moeten zijn.
Door simpelweg een nieuwe thread te maken en het hoofdwerk aan die thread te geven, is mijn probleem opgelost.


Antwoord 28

deze fout kan verschillende oorzaken hebben. om de reden te achterhalen, voeg try/catch toe wanneer de service wordt uitgevoerd.

       try
            {
                ServiceBase[] ServicesToRun;
                ServicesToRun = new ServiceBase[] 
                { 
                    new Service1() 
                };
                <span class="skimlinks-unlinked">ServiceBase.Run(ServicesToRun</span>);
            }
            catch (Exception ex)
            {
                EventLog.WriteEntry("Application", ex.ToString(), <span class="skimlinks-unlinked">EventLogEntryType.Error</span>);
            }

Antwoord 29

Zoals niemand heeft vermeld, zal ik het toevoegen (zelfs als het een domme fout is).
Als u Windows 10 gebruikt, hoeft u meestal niet opnieuw op te starten, maar

-> Zorg ervoor dat u alle geopende eigenschappenpagina’s van het “services”-venster SLUIT voor het geval u de service net hebt geïnstalleerd (en nog steeds de eigenschappenpagina van de oude service hebt geopend).

Ik heb het over dit venster:

Na het sluiten van alle servicevensters en het opnieuw proberen -> het werkte. In tegenstelling tot de OP kreeg ik Error 1053in principe onmiddellijk (zonder dat Windows ergens op wacht)


Antwoord 30

Installeer het .net framework 4.5! Het werkte voor mij.

https://www.microsoft.com/en -us/download/details.aspx?id=57768

Other episodes