Как да поправя грешка „Shellexecuteex Failed“ в Windows?

Няколко потребители на Windows се обръщат към нас с въпроси, след като са срещнали съобщението за грешка „ Shellexecuteex Failed “, когато се опитват да извършат действие, което включва свързване към интернет или при инсталиране на приложение. За засегнатите потребители се съобщават различни кодове, които се показват заедно със съобщението за грешка. Оказа се, че проблемът не е изключителен за определена версия на WIndows, тъй като успяхме да намерим появата му в Windows 7, Windows 8.1 и Windows 10.

Какво причинява грешката „ Shellexecuteex Failed “ в Windows?

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

  • Приложението няма администраторски права - Както се оказва, този проблем е доста често срещан в случаи, когато има неочаквано приложение, изключено поради недостатъчни разрешения. Ако този сценарий е приложим, в повечето случаи трябва да можете да разрешите проблема, като се уверите, че приложението се отваря с администраторски достъп.
  • Повреда на системните файлове - Друг потенциален виновник е повредата на системните файлове, която засяга зависимост, използвана от приложението, което показва грешката. Няколко потребители, които също се сблъскват с този проблем, съобщават, че проблемът е разрешен, след като са поправили всяка логическа грешка и повреден елемент с двете вградени помощни програми (DISM и SFC). В най-тежките случаи единствената жизнеспособна корекция, която ще работи в този сценарий, е да нулирате всеки компонент на Windows, като извършите чиста инсталация или поправка.
  • Персонализираните системни звуци разбиват приложението - Възможно е също да срещнете този проблем поради някои персонализирани звуци на тема на Windows, които не се обработват от свойствата на приложението, опитвайки се да ги използва. В този случай трябва да можете да разрешите проблема, като се върнете към звуците по подразбиране за Windows.
  • Конфликт на приложение - При определени обстоятелства също е възможно различно приложение да противоречи на процеса на приложението, което се опитвате да стартирате, което в крайна сметка задейства грешката. Тъй като няма окончателни приложения, които са в конфликт, най-добрият начин да откриете виновника е да стартирате компютъра си в режим на чисто зареждане и да видите дали симптомите спират.
  • Локална политика на свръхзащита - Ако е разрешена една конкретна Локална политика (Издигнете само изпълними файлове, които са подписани и валидирани), всеки изпълним файл, който не е правилно подписан и валидиран, ще бъде възпрепятстван да работи с тази конкретна грешка. В този случай отстранявате проблема, като осъществявате достъп до редактора на групови правила и деактивирате правилата, причиняващи проблема.

Метод 1: Стартиране на приложението като администратор (ако е приложимо)

Ако срещнете грешка „ Shellexecuteex Failed “, докато се опитвате да отворите или инсталирате приложение, много вероятно е проблемът да възникне поради неочаквано изключване на приложението (или изпълнимия файл за инсталиране), тъй като няма администраторски достъп.

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

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

  1. Щракнете с десния бутон върху приложението, което задейства грешката, и изберете Properties от новопоявилото се меню.
  2. След като влезете в екрана Свойства , изберете раздела Съвместимост и отидете в раздела Настройки . След това поставете отметка в квадратчето, свързано с Изпълни тази програма като администратор , след което щракнете върху Приложи, за да зададете това като ново поведение по подразбиране.
  3. Стартирайте приложението отново и вижте дали проблемът вече е разрешен.

Ако същата грешка „ Shellexecuteex Failed “ все още се появява, преминете надолу към следващия метод по-долу.

Метод 2: Стартиране на сканиране на DISM и SFC

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

И най-добрият начин да направите това е да разчитате на вградени помощни програми като DISM (обслужване и управление на изображения за внедряване) и SFC (Проверка на системни файлове). и двете са оборудвани за работа с повредени системни файлове, но работят по различен начин.

Докато SFC разчита на локално съхранен кеш, за да замени повредените елементи със здрави копия, DISM използва WU (Windows Update), за да изтегли здравите файлове, необходими за замяната. Но тъй като помощните програми са насочени към фиксиране на различни компоненти (SFC е по-ефективен при логически грешки), най-добрият подход е да разположите и двете сканирания, за да подобрите шансовете си за успех.

Ето какво трябва да направите:

  1. Натиснете клавиша Windows + R, за да отворите диалоговия прозорец Изпълнение. След това, в текстовото поле Run, напишете 'cmd' и натиснете Ctrl + Shift + Enter, за да отворите командния ред с администраторски достъп. Когато бъдете подканени от UAC (Контрол на потребителски акаунти) , щракнете върху Да, за да отворите повишения команден ред.
  2. Вътре в повишения команден ред въведете следната команда и натиснете Enter, за да стартирате SFC сканиране:
    sfc / scannow

    Забележка : Не пречете на прозореца, докато процесът не завърши. Прекъсването на операцията вероятно ще създаде още по-логични грешки, които ще бъдат по-трудни за отстраняване.

  3. След като сканирането приключи, рестартирайте компютъра си и изчакайте следващото стартиране да завърши. След като вашата операционна система е напълно заредена, следвайте стъпка 1 отново, за да отворите друг повишен команден ред. След като се върнете в прозореца на CMD, въведете следните команди и натиснете Enter след всяка, за да стартирате DISM сканиране:
    Dism.exe / online / cleanup-image / scanhealth Dism.exe / online / cleanup-image / restorehealth

    Забележка: Уверете се, че вашата интернет връзка е стабилна, преди да започнете този процес. Първата команда ще стартира сканирането, докато втората ще започне процеса на сканиране.

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

Ако грешката „ Shellexecuteex Failed “ все още се появява, когато повтаряте същото действие, преминете надолу към следващия метод по-долу.

Метод 3: Възстановяване на системните звуци по подразбиране

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

В този случай ще можете да разрешите проблема, като възстановите всички звуци на Windows по подразбиране. След като направиха това и рестартираха машината, повечето засегнати потребители съобщиха, че проблемът е разрешен.

Ето кратко ръководство за връщане на системните звуци към стойностите по подразбиране:

  1. Натиснете клавиша Windows + R, за да отворите диалоговия прозорец Изпълнение . В полето за изпълнение въведете „mmsys.cpl“ вътре в текстовото поле и натиснете Enter, за да отворите екрана за звук .
  2. След като влезете в прозореца Звук , изберете раздела Звуци от хоризонталното меню. След това променете звуковата схема на Windows по подразбиране .

    Забележка : Ако текущата ви звукова схема е настроена на Windows по подразбиране (модифицирана), то е Windows Default, тъй като може да имате някои невалидни звуци.

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

Повторете действието, което преди това е задействало грешката „ Shellexecuteex Failed “ и в случай, че проблемът все още се появява, преминете надолу към следващия метод по-долу.

Метод 4: Извършване на чисто зареждане

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

Следвайте инструкциите по-долу, за да постигнете чисто състояние на зареждане и да идентифицирате приложението, което причинява конфликта. Ето какво трябва да направите:

  1. Натиснете клавиша Windows + R, за да отворите диалоговия прозорец Изпълнение. След това въведете “mscofig” и натиснете Enter, за да отворите менюто System Configuration . Когато видите менюто UAC (User Account Control) , щракнете върху Да, за да предоставите администраторски права.
  2. След като влезете в прозореца за конфигуриране на системата , щракнете върху раздела Услуги от горната част на менюто, след което поставете отметка в квадратчето, свързано с „Скриване на всички услуги на Microsoft“ . След като направите това, всички услуги на Windows ще бъдат премахнати от този списък, така че не рискувате да деактивирате компонент на Windows.
  3. След като успеете да изключите всички основни услуги от списъка, кликнете върху бутона Деактивиране на всички, за да предотвратите ефективното стартиране на която и да е услуга на трета страна при следващото стартиране на машината.
  4. След това изберете раздела Стартиране от хоризонталното меню и щракнете върху Отваряне на диспечера на задачите .
  5. След като влезете в раздела Стартиране на диспечера на задачите, систематично избирайте всяка услуга за стартиране и след това щракнете върху бутона Деактивиране в долната част на екрана. Тази процедура ще гарантира, че нито една стартираща услуга няма да бъде извикана при следващото стартиране на системата.
  6. След като стигнахте до тази стъпка, вие ефективно деактивирахте всяка услуга или процес, които могат да попречат на приложението да показва грешка „ Shellexecuteex Failed “. Възползвайте се от току-що конфигурираното от вас състояние на чисто зареждане, като рестартирате компютъра си.
  7. При следващото стартиране на системата проверете дали грешката все още се появява, след като се опитате да стартирате приложението. Ако грешката вече не се появява, завършете инсталацията, след това направете обратно проектиране на горните стъпки и активирайте отново услугите, които преди това сте деактивирали.

Ако този метод не ви позволи да разрешите грешката „ Shellexecuteex Failed “, преминете надолу към следващия метод по-долу.

Метод 5: Коригиране на политиката „ Само да се изпълняват изпълними файлове“

Както се оказва, този конкретен проблем може да бъде избегнат и чрез коригиране на една групова политика,  наречена Only elevate изпълними файлове, които са подписани и проверени. Но имайте предвид, че този метод ще бъде ефективен само в ситуации, когато проблемът е причинен от изпълним файл, който не е подписан правилно.

Няколко засегнати потребители съобщиха, че проблемът е спрял да се появява и инсталацията е била успешна, след като изпълнимите файлове Only elevate, които са подписани и проверени, са  били ефективно деактивирани.

Забележка: Някои версии на Windows не включват редактора на групи. В този случай този метод няма да бъде приложим, така че преминете директно към последния метод по-долу.

Ето кратко ръководство за деактивиране на политиката, която задейства грешката „ Shellexecuteex Failed “:

  1. Натиснете клавиша Windows + R, за да отворите диалоговия прозорец Изпълнение . След това въведете „gpedit.msc“ в текстовото поле и натиснете Ctrl + Shift + Enter, за да отворите редактора на локални групови правила с администраторски права. Когато видите подкана UAC (User Account Control) , щракнете върху Да, за да предоставите администраторски достъп.
  2. След като влезете в Редактора на локални групови правила , преминете към левия панел и изберете Компютърна конфигурация> Настройки на Windows> Настройки за защита .
  3. С избраното меню Опции за защита , преминете към дясната страна и щракнете двукратно върху Контрол на потребителския акаунт: Издигнете само изпълними файлове, които са подписани и валидирани .
  4. След като влезете в менюто на политиката, изберете раздела Local Security Setting и след това се уверете, че правилото е настроено на Disabled .
  5. Щракнете върху Приложи, за да запазите промените, след това рестартирайте компютъра си и вижте дали проблемът е разрешен при следващото стартиране на системата.

Ако грешката „ Shellexecuteex Failed “ все още се появява, преминете надолу към следващия метод по-долу.

Метод 6: Извършване на чиста инсталация

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

Най-бързият начин да направите това е чрез извършване на чисто инсталиране ( тук ), но имайте предвид, че тази процедура ще ви накара да загубите всички лични данни, включително инсталирани приложения, игри, медии, потребителски предпочитания и други.

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