Позбавляємося від Application error kernelbase.dll і лікуємо .NET Framework

Коротше, тиждень задалася не найкраща: якимось чином у мене почали сипатися помилки “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

  1. Додаємо цю сторінку в закладки і перезавантажуємося в безпечний режим з підтримкою мережевих драйверів (Ще спосіб).
  2. Відкриваємо знову сторінку мого крутого блогу і качаємо .NET Framework Cleanup Tool c мого сервера або з MSDN (на випадок, якщо ссикло)
  3. Запускаємо утиліту і тикаємо на Cleanup Now
  4. Йдемо на кухню і робимо чай або можна відмінно засісти в туалеті з телефоном в руках і читати дурні паблік в вк і т.д.
  5. Повертаємося – якщо ще не віддалилося – йдемо назад в поштовхом і дочитувати паблік. Повторюємо, поки не віддалиться.
  6. Віддалилося? ОК. Перезавантажуємося в звичайний режим.
  7. Тепер завантажуємо .NET Framework v4.0 і встановлюємо, схрестивши пальці, тому що цей гей дуже любить випендрюватися
  8. Перевіряємо – чи всі ок з додатками, які не працювали і чи є в логах помилки. Якщо все в цілому ОК, можна буде оновитися до .NET Framework 4.5, але не в якому разі не ставити відразу 4.5! Спочатку треба поставити версію 4.

Спосіб 2: Якщо спосіб 1 не допоміг

  1. Можна виконати перший спосіб і залишити .NET у встановленому стані. Далі потрібно на зламаній машині встановити всі оновлення, стосуються .NET (можна просто встановити всі обов'язкові поновлення)
  2. Попереджаю – спосіб тільки для джедаїв, бо сила дже-дай – це сила всесвіту. У загальному, тоскний спосіб.
  3. Якщо у вас є другий комп або ноутбук, на якому теж встановлена ​​така ж система Windows з такою ж архітектурою (32 або 64 біт), то третій пунк можна пропустити. А якщо у вас встановлена ​​Windows 7 x64, то можна спробувати завантажити мій підготовлений пакет і перейти до кроку 7
  4. Викачуємо VirtualBox або VMWare Player і встановлюємо на машину такий же Windows, який стоїть на зламаній тачці.
  5. Ставимо оновлення для новий Windows так, щоб вони збігалися з оновленнями на локальній тачці, хоча в цілому можна просто на новій винде поставити ВСЕ поновлення (хіба що окрім рекомендованих).
  6. Після установки оновлень перезавантажуємо віртуальну машину, йдемо в папку C:\Windows Microsoft.NET і архівуємо її в RAR або ZIP або просто копіюємо папку собі на локальну машину, наприклад в Мої документи recover, щоб вийшло Мої документи recover Microsoft.NET.
  7. Розпаковуємо або копіюємо БЕЗ ЗАМІНИ всі файли з папки recover Microsoft.NET в папку C:\Windows Microsoft.NET і перезавантажуємо комп.
  8. Все має тепер працювати, ну а якщо вже не працює – доведеться переставляти систему, я поняття не маю, що ще можна зробити в цьому випадку.

Опишу свою конкретну проблему: у мене вилітав часто 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 за те, що додали в свій додаток Список, які допомогли мені відстежити помилку. Якщо ви розробник, то пам'ятайте – Список – це добре! Чим більше логів – тим більше логів.

Завантаження

This entry was posted in Комп'ютери, Системне адміністрування and tagged , , , , , , , , , , . Bookmark the permalink. | Коротке посилання:  http://p1rat.ru/lezzz/SXzWo

4 Responses to Позбавляємося від Application error kernelbase.dll і лікуємо .NET Framework

Залиште відповідь