Как да коригирам грешка 1053: Услугата не е отговорила своевременно на заявката за стартиране или контрол?

Потребителите изпитват съобщение за грешка 1053, което гласи „Услугата не е отговорила своевременно на заявката за стартиране или контрол“. Това съобщение за грешка е причината за изчакване, което възниква след иницииране на заявка за стартиране на услуга, но не е отговорило в прозореца за време.

Съществуват множество варианти на съобщението за грешка, вариращи от проблеми в услугите на Windows до персонализирани услуги, които не могат да се стартират (включително игри и друг софтуер на трети страни). Попаднахме и на случаи, в които разработчиците са се сблъсквали с този проблем, когато са разработвали своя персонализиран софтуер. Тук в тази статия ще разгледаме всички варианти на съобщението за грешка и ще обсъдим какво би могло да се направи за решаване на проблема веднъж завинаги.

Какво причинява грешка 1053 в Windows?

След като получихме първоначални отчети от потребители, започнахме нашето разследване и разгледахме задълбочено всички модули, включени в механиката на стартиране като услуга. След като събрахме всички резултати и ги синхронизирахме с отговорите на потребителите, стигнахме до заключението, че проблемът е възникнал поради няколко различни причини. Някои от тях са изброени по-долу:

  • Настройки за изчакване: Windows по подразбиране има настройка за изчакване, която, ако не бъде изпълнена от приложенията, ги принуждава да прекъснат и затворят. Ако услугата, която се опитвате да стартирате, отнема много повече време, за да отговори, тогава тя ще бъде убита. Тук можем да променим настройката за изчакване, като манипулираме системния регистър.
  • Липсващ DLL файл: Друг случай на грешка възниква, когато имате липсващ DLL файл на вашия компютър, който се използва и от много други приложения. Ако този DLL файл е в конфликт или изобщо не присъства, ще получите съобщение за грешка.
  • Повредени / липсващи системни файлове: Друг случай, поради който възниква този проблем, е, че на вашия компютър има повредени или липсващи системни файлове. Ако самата инсталация на Windows не е правилна и има проблеми, ще имате множество проблеми, включително обсъжданото съобщение за грешка.
  • Остарял Windows: Microsoft официално разпозна това съобщение за грешка на официалния си уебсайт и дори пусна временна актуална корекция, за да реши проблема. Наскоро обаче премахнаха актуалната корекция и инструктираха потребителите да надстроят до последната итерация на Windows.
  • Използване на компилация на издание (за разработчици): Ако се опитвате да стартирате услуги в Debug компилация на Windows, вероятно ще получите това съобщение за грешка. Сборките за отстраняване на грешки не са стабилни и не разполагат с цялата функционалност в сравнение с компилациите на версии.
  • Липсващи рамки (за разработчици): Несъвместимостта на рамки също е отговорна за причиняването на съобщението за грешка. Кутията, в която се опитвате да стартирате услугата, и самата услуга трябва да са в една и съща рамка.
  • Проблем в услугата на DB (за разработчици): Друг случай, при който може да се появи това съобщение за грешка, е проблемът с вашата конфигурация на проекта. Данните за сървъра трябва да бъдат коригирани, така че услугата да няма проблем с достъпа.
  • Повредена инсталация: Друг често срещан случай, при който може да възникне това съобщение за грешка, е, че инсталирането на вашето приложение (което подсказва услугата) е донякъде повредено. Преинсталирането помага тук.
  • Лоши мрежови конфигурации: Услугите непрекъснато комуникират с вашата мрежа. Ако мрежовите ви конфигурации не са добри, услугите може да не успеят да изпълнят задачите си и следователно да предизвикат обсъжданото съобщение за грешка.
  • Администраторски достъп: Услугата, която се опитвате да стартирате (или трета страна се опитва да стартира), трябва да бъде стартирана като администратор, ако използва системни ресурси, които не са предназначени за нормална употреба.

Преди да продължим с решенията, уверете се, че сте влезли като администратор на вашия компютър и имате активна интернет връзка. Също така, следвайте решението от самото начало и съответно продължете надолу.

Решение 1: Промяна на настройките за изчакване чрез системния регистър

Първото нещо, което трябва да опитаме, е да променим настройките за изчакване на вашите услуги чрез вашия редактор на системния регистър. Винаги, когато се иска услуга за стартиране, стартира се таймер с предварително зададена стойност. Ако услугата не стартира в рамките на този период от време, съобщението за грешка се изпраща напред, докладвайки така. Тук в това решение ще преминем към системния регистър на вашия компютър и ще променим стойността. Ако не присъства, ще създадем нов ключ за него.

  1. Натиснете Windows + R, въведете „ regedit “ в диалоговия прозорец и натиснете Enter.
  2. Веднъж в редактора на системния регистър, отидете до следния файлов път:
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \
  1. Сега потърсете ключа на 'ServicesPipeTimeout'. Ако го намерите вече там, можете да преминете към директно редактиране. Ако обаче не намерите записа, изберете Control , щракнете с десния бутон върху произволно място в дясната част на екрана и изберете New> DWORD
  2. Наименувайте ключа като „ ServicesPipeTimeout “ и задайте стойността като 180000 (Можете също да щракнете с десния бутон върху стойността и да кликнете върху „ Промяна“, ако опцията за задаване на стойността не е налична във вашия случай.
  3. Запазете промените и излезте. Рестартирайте компютъра си напълно и след това опитайте да стартирате услугата. Проверете дали проблемът е разрешен.

Решение 2: Проверка за повредени системни файлове

Друго нещо, което трябва да опитате, преди да преминем към по-технически и усъвършенствани методи, е да проверим дали системата има някаква повреда или не. Ако в самия ви Windows липсват файлове и по някакъв начин е повреден, някои важни модули може да не работят. В резултат на това ще изпитате съобщението за грешка 1053. В това решение ще използваме системата за проверка на системните файлове на Window, която проверява цялата ваша системна файлова структура и сравнява структурата с тази на ново копие, присъстващо онлайн. Ако има някакво несъответствие, файловете ще бъдат заменени съответно.

  1. Натиснете Windows + S, въведете “command prompt” в диалоговия прозорец, щракнете с десния бутон върху приложението и изберете Run as administrator .
  2. Веднъж в повишен команден ред, изпълнете следните команди една по една и се уверете, че те са изпълнени:
sfc / scannow DISM / Online / Cleanup-Image / RestoreHealth
  1. Последната команда коригира всички проблеми, които системната проверка на файлове диагностицира при стартиране на сканирането. Рестартирайте компютъра си напълно след стартиране на командите и проверете дали проблемът е разрешен окончателно.

Решение 3: Преинсталиране на приложението (ако е приложимо)

Друг полезен метод за изкореняване на съобщението за грешка 1053 е преинсталирането на приложението, което иска услугата. Обикновено приложенията на трети страни, инсталирани от външен източник (с изключение на Microsoft Store), може да имат липсващи или остарели компоненти, които изискват някаква услуга в Windows.

Тук можете да отидете до официалния уебсайт и да изтеглите нова версия на приложението. След деинсталиране на текущата версия можете да я инсталирате. Ето метода за това как да деинсталирате приложение в Windows.

  1. Натиснете Windows + R, въведете “ appwiz.cpl ” в диалоговия прозорец и натиснете Enter.
  2. След като попаднете в диспечера на приложения, потърсете приложението, щракнете с десния бутон върху него и изберете Деинсталиране .
  3. Рестартирайте компютъра си и след това продължете с процеса на преинсталация.

Решение 4: Нулиране на мрежовия кеш и конфигурации

Ако използвате услуга, която се свързва с интернет и свърши някаква работа там, препоръчително е да проверите дали всичките ви сокети и други мрежови конфигурации са непокътнати и не причиняват проблеми. Ако са, вашата услуга може да не е в състояние да се свърже с интернет, за да изпълнява задачите си и следователно да създава затруднения.

В това решение ще отидем до командния ред като администратор и ще нулираме мрежовите конфигурации от там. Ако успее, съобщението за грешка ще бъде премахнато.

Забележка: Това ще изтрие всички потребителски настройки, които сте задали ръчно.

  1. Натиснете Windows + R, въведете “ command prompt ” в диалоговия прозорец, щракнете с десния бутон върху приложението и изберете “ Run as administrator ”.
  2. Веднъж в повишен команден ред, изпълнете следните команди една по една:
netsh winsock нулиране ipconfig / подновяване
  1. След нулиране на вашата мрежа, уверете се, че имате достъп до интернет, като проверите през браузъра си и проверете дали проблемът е разрешен.

Решение 5: Получаване на собственост върху приложението

Друг рядък случай, на който сме попаднали, е липсата на собственост върху приложението, поради което приложението не изпълнява услугата правилно. Това има смисъл, сякаш приложението няма достатъчно повишен достъп, няма да може да изпрати / прочете отговора към / от услуга (особено ако е системна услуга). В тази статия ще преминем към изпълнимия файл на приложението и след това ще променим собствеността на нашето потребителско име. Ако успее, това ще реши проблема с получаването на грешка 1053.

  1. Намерете файла / папката на приложението. Щракнете с десния бутон и изберете Properties .
  1. Придвижете се до раздела „Защита“ и кликнете върху „ Разширени “, намиращ се в най-долната част на екрана, както можете да видите на изображението по-долу.
  2. Щракнете върху бутона „ Промяна “, присъстващ в предходния екран. Ще бъде точно пред стойността на собственика. Тук ще сменим собственика на тази папка от стойността по подразбиране към вашия акаунт на компютъра.
  3. Сега въведете името на вашия потребителски акаунт в присъстващото пространство и кликнете върху „ Проверка на имената“ . Windows автоматично ще изброи всички акаунти, които са попаднали срещу това име.

Ако не можете да намерите името на акаунта си, използвайки този метод, можете да опитате да го изберете ръчно от списъка с налични потребителски групи. Кликнете върху „Разширени“ и когато излезе новият прозорец, кликнете върху „Намери сега“. В долната част на екрана ще се попълни списък, състоящ се от всички потребителски групи на вашия компютър. Изберете вашия акаунт и натиснете „OK“. Когато се върнете в по-малкия прозорец, натиснете отново „OK“.

  1. Сега проверете реда „ Замяна на собственика на подконтейнери и обекти “. Това ще гарантира, че всички папки / файлове в папката също променят собствеността си. По този начин няма да се налага да продължите с всички процеси отново и отново за наличните поддиректории. В допълнение към това, ние също препоръчваме да активирате опцията „ Заменете всички записи на разрешения на дъщерни обекти с наследствени записи на разрешения от този обект “.
  2. Сега затворете прозореца Properties след като щракнете върху „ Apply “ и го отворете отново след това. Придвижете се до раздела за сигурност и щракнете върху „ Разширени “.
  3. В прозореца за разрешения щракнете върху „ Добавяне “ в долната долна част на екрана.
  4. Кликнете върху „ Избор на принцип “. Ще се появи подобен прозорец, както в стъпка 4. Повторете стъпка 4, когато се появи. Сега проверете всички разрешения (давайки пълен контрол) и натиснете „ OK “.
  5. Поставете отметка в реда „ Заменете всички записи за разрешения на дъщерни обекти с наследствени записи за разрешения от този обект “ и натиснете Приложи.
  6. Затворете файловете и рестартирайте компютъра си напълно. Сега опитайте да стартирате приложението и проверете дали проблемът е решен завинаги.

Решение 6: Актуализиране на Windows до най-новата версия

Друго нещо, което трябва да опитате, е да проверите дали имате инсталирана актуализирана версия на Windows на вашия компютър или не. Актуализациите на Microsoft за насочване на нови промени в операционната система и за поддържане на допълнителни функции. Някои актуализации имат „критичен“ характер и трябва да бъдат инсталирани възможно най-скоро. Ако някоя от тези „критични“ актуализации не е инсталирана, ще имате проблеми.

  1. Натиснете Windows + S, за да стартирате лентата за търсене, напишете Update в диалоговия прозорец и отворете настройките за актуализиране.
  2. Веднъж в настройките за актуализация, кликнете върху Проверка за актуализации . Сега компютърът ще се свърже със сървърите на Microsoft и ще провери дали има налична актуализация. Ако има вече подчертани актуализации, изпълнете ги незабавно.

Бонус: Съвети за разработчици

Ако сте разработчик и се опитвате да стартирате услуга в Windows, има стотици технически характеристики, които трябва да правите точно, за да се появите и да получите отговор от услугата. Тук в това бонусно решение ще изброим някои от най-популярните причини за грешка 1053 в развиващия се свят и техните решения.

  • Уверете се, че .NET Frameworks са синхронизирани: Ако приложението / услугата, която се опитвате да стартирате, е на друга Framework, различна от тази на хостинг машината, ще имате проблеми. Уверете се, че рамките са синхронизирани.
  • Използване на Release Build: Разработчиците обикновено са склонни да използват Debug build, за да тестват различни услуги и техните операции. Беше отбелязано обаче, че не пускането на услугата в Release build създава няколко проблема.
  • За да отстраните грешки при стартирането на вашата услуга (за да получите повече информация), вмъкнете кода, изброен по-долу, в горната част на метода OnStart () на вашата услуга:
докато (! System.Diagnostics.Debugger.IsAttached) Thread.Sleep (100);

Това, което ще направи, е да спре услугата, за да можете бързо да прикачите дебъгера на Visual Studio чрез Debug> Attack

  • Копирайте DLL за освобождаване или вземете DLL файла от режим на освобождаване вместо от режим за отстраняване на грешки и го поставете в инсталационната папка. Това ще реши всички проблеми, ако са свързани с DLL файла.
  • Уверете се, че базата данни, до която има достъп вашата услуга / приложение, е правилно конфигурирана. Ако има някакви проблеми със самата база данни (или други идентификационни данни), ще изпитате съобщението за грешка. Добра практика е да проверите отново всички модули и да се уверите, че всички параметри и променливи са правилно зададени.