Карацей, тыдзень задалася ня лепшая: каким-то образом у меня начали сыпаться ошибки “Application error kernelbase.dll” (імя прыкладання не нясе важнасці)
Имя сбойного приложения: Connect.Service.ContentService.exe, версия: 3.0.84.0, отметка времени: 0x4f344200 Имя сбойного модуля: KERNELBASE.dll, версия: 6.1.7601.18798, отметка времени 0x5507b485 Код исключения: 0xe0434352 Смещение ошибки: 0x0000c42d Идентификатор сбойного процесса: 0x8e8 Время запуска сбойного приложения: 0x01d079586563378c Путь сбойного приложения: C:\Program Files (x86)\Autodesk\Content Service\Connect.Service.ContentService.exe Путь сбойного модуля: C:\Windows\syswow64\KERNELBASE.dll Код отчета: a327902f-e54b-11e4-b131-240a649fc3bc
Чаго я толькі не спрабаваў! Советовали переустановить полностью .NET – сначала снести, а потым ўсталяваць, але ў мяне не спрацавала. Увогуле, я апішу гэты спосаб, паколькі ён з'яўляецца досыць простым у адрозненне ад таго, які ужыў я.
Спосаб 1
- Дадаем гэтую старонку ў закладкі і перазагружаемся ў бяспечны рэжым з падтрымкай сеткавых драйвераў (Яшчэ спосаб).
- Адкрываем зноў старонку майго стромкага блога і качаем .NET Framework Cleanup Tool c майго сервера або з MSDN (выпадак, калі ссыкло)
- Запускаем утыліту і тыкаць на Cleanup Now
- Ідзем на кухню і робім чай ці можна выдатна засесці ў прыбіральні з тэлефонам у руках і чытаць дурныя Паблік ў вк і г.д.
- Возвращаемся – если еще не удалилось – идем обратно в толчком и дочитываем паблики. паўтараем, пока не удалится.
- Аддалілася? ОК. Перазагружаемся ў звычайны рэжым.
- Цяпер спампоўваем .NET Framework v4.0 і ўсталёўваны, скрыжаваўшы пальцы, таму што гэты гей вельмі любіць вылузвацца
- Проверяем – все ли ок с приложениями, якія не працавалі і ці ёсць у логах памылкі. Калі ўсё ў цэлым ОК, можна будзе абнавіцца да .NET Framework 4.5, але не ў якім разе не ставіць адразу 4.5! Спачатку трэба паставіць версію 4.
Спосаб 2: Калі спосаб 1 не дапамог
- Можна прарабіць першы спосаб і пакінуць .NET ва ўстаноўленым стане. Далей трэба на зламанай машыне ўсталяваць ўсе абнаўлення, якія тычацца .NET (можна проста ўсталяваць ўсе абавязковыя абнаўлення)
- Предупреждаю – способ только для джедаев, потому что сила дже-дай – это сила вселенной. Увогуле, моташная спосаб.
- Калі ў вас ёсць другі комп ці ноўтбук, на якім таксама ўсталяваная такая ж сістэма Windows з такой жа архітэктурай (32 або 64 біт), то трэці пунк можна прапусціць. А калі ў вас ўстаноўлена Windows 7 x64, то можна паспрабаваць спампаваць мой падрыхтаваны пакет і перайсці да кроку 7
- Спампоўваем VirtualBox або VMWare Player і ўсталёўваны на машыну такой жа Windows, які стаіць на зламанай тачцы.
- Ставім абнаўлення для новы Windows так, каб яны супадалі з абнаўленнямі на лакальнай тачцы, хоць у цэлым можна проста на новай віндзе паставіць УСЕ абнаўлення (хіба што акрамя рэкамендуемых).
- Пасля ўстаноўкі абнаўленняў перазагружаем віртуальную машыну, ідзем у тэчку C:\Windows Microsoft.NET і архивируем яе ў RAR або ZIP ці проста капіюем тэчку сабе на лакальную машыну, напрыклад у Мае дакументы recover, каб атрымалася Мае дакументы recover Microsoft.NET.
- Распакоўваецца або які капіюецца Без замены усе файлы з тэчкі recover Microsoft.NET ў тэчку C:\Windows Microsoft.NET і перазагружаем комп.
- Усё павінна цяпер працаваць, ну а если уж не работает – придется переставлять систему, я паняцця не маю, што яшчэ можна зрабіць у гэтым выпадку.
Апішу сваю канкрэтную праблему: у мяне вылятаў часта Skype (можа, еще и не перестал вылетать – кто его знает!) и не открывался GEForce Experience – выдавал мне ошибку “Обнаружена ошибка. Приложение будет закрыто” и вот такую вот ересь я нашел в логах
Не удается загрузить один или более запрошенных типов. Обратитесь к свойству LoaderExceptions для получения дополнительных сведений. System.Reflection.ReflectionTypeLoadException в System.Reflection.RuntimeModule.GetTypes(RuntimeModule module) в System.Reflection.RuntimeModule.GetTypes() в System.Reflection.Assembly.GetTypes() в System.ComponentModel.Composition.Hosting.AssemblyCatalog.get_InnerCatalog() в System.ComponentModel.Composition.Hosting.AssemblyCatalog.GetEnumerator() в System.Linq.Enumerable.<SelectManyIterator>d__14`2.MoveNext() в Microsoft.Practices.Prism.MefExtensions.DefaultPrismServiceRegistrar.GetRequiredPrismPartsToRegister(AggregateCatalog aggregateCatalog) в Microsoft.Practices.Prism.MefExtensions.DefaultPrismServiceRegistrar.RegisterRequiredPrismServicesIfMissing(AggregateCatalog aggregateCatalog) в Microsoft.Practices.Prism.MefExtensions.MefBootstrapper.RegisterDefaultTypesIfMissing() в Microsoft.Practices.Prism.MefExtensions.MefBootstrapper.Run(Boolean runWithDefaultConfiguration) в Flame.Core.FlameBootstrapper`3.Run(Boolean runWithDefaultConfiguration) в Flame.Core.FlameApplicationGovernor`4.RunOnce() в Flame.Core.FlameApplicationGovernor`4.Application_Startup(Object sender, StartupEventArgs e) в System.Windows.Application.OnStartup(StartupEventArgs e) в GFEClient.App.OnStartup(StartupEventArgs e) в System.Windows.Application.<.ctor>b__1(Object unused) в System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs) в MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
Мне дапамог менавіта другі спосаб. Першы не даваў асабліва нічога за два дні пакут, у выніку вырашылася за 10 секунд.
PS: Асобнае дзякуй Nvidia за тое, што дадалі ў сваё прыкладанне логі, якія дапамаглі мне адсачыць памылку. Калі вы распрацоўшчык, то помните – ЛОГИ – это хорошо! Чем больше логов – тем больше логов.