#exception #windows-7 #unhandled-exception #global-assembly-cache
#исключение #windows-7 #необработанное исключение #глобальная сборка-кэш
Вопрос:
Я совсем недавно столкнулся с этой проблемой, и это может быть связано с чем-то, что я установил на своем компьютере. Хотя я не могу вспомнить. Время от времени я получаю окно сообщения Microsoft .NET Framework, которое появляется на моем компьютере и сообщает мне:
«Необработанное исключение произошло в компоненте вашего приложения. Если вы нажмете Продолжить, приложение проигнорирует эту ошибку и попытается продолжить.
Не удалось загрузить файл или сборку ‘Accessibility, Version=2.0.0.0, Culture = neutral, PublicKeyToken =b03f5f7f11d50a3a’ или одну из его зависимостей. Указанное имя сборки или кодовой базы»
Я попытался переустановить .net 4.0 framework. Я не могу найти загрузку .net 2.0 Framework для ее переустановки. Я пытался использовать gacutil / uf accessibility, чтобы принудительно удалить эту dll, но это не сработало. Я также проверил, где установлена библиотека dll Accessibility, и сравнил ее с другими компьютерами, и все то же самое, включая global.config и web.config.
Это исключение возникает не только для одного процесса на моем компьютере. Поскольку это проблема с моим GAC, любое приложение, использующее эту сборку, выдает такое же исключение.
Я включил ведение журнала привязки с помощью Fusion, и вот что мне сообщают подробности:
"See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.IO.FileLoadException: Could not load file or assembly 'Accessibility, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The given assembly name or codebase was invalid. (Exception from HRESULT: 0x80131047)
File name: 'Accessibility, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'
at System.Windows.Forms.Control.OnHandleCreated(EventArgs e)
at System.Windows.Forms.Control.WmCreate(Messageamp; m)
at System.Windows.Forms.Control.WndProc(Messageamp; m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Messageamp; m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
=== Pre-bind state information ===
LOG: User = CORPagg9909
LOG: DisplayName = Accessibility, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
(Fully-specified)
LOG: Appbase = file:///C:/Program Files (x86)/Intel/Intel(R) Management Engine Components/IMSS/
LOG: Initial PrivatePath = NULL
Calling assembly : System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089.
===
LOG: This bind starts in default load context.
LOG: Using application configuration file: C:Program Files (x86)IntelIntel(R) Management Engine ComponentsIMSSPrivacyIconClient.exe.Config
LOG: Using machine configuration file from C:WindowsMicrosoft.NETFramework64v2.0.50727configmachine.config.
LOG: Post-policy reference: Accessibility, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
LOG: The same bind was seen before, and was failed with hr = 0x80131047.
************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.5444 (Win7SP1GDR.050727-5400)
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll
----------------------------------------
PrivacyIconClient
Assembly Version: 6.0.40.1213
Win32 Version: 6.0.40.1213
CodeBase: file:///C:/Program Files (x86)/Intel/Intel(R) Management Engine Components/IMSS/PrivacyIconClient.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.5420 (Win7SP1.050727-5400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.5420 (Win7SP1.050727-5400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.5420 (Win7SP1.050727-5400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.5420 (Win7SP1.050727-5400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.5420 (Win7SP1.050727-5400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
AMT_COM_InterfaceLib
Assembly Version: 1.0.0.0
Win32 Version: 6.0.0.0
CodeBase: file:///C:/Program Files (x86)/Intel/Intel(R) Management Engine Components/IMSS/AMT_COM_InterfaceLib.DLL
----------------------------------------
AMT_SW_GUI
Assembly Version: 1.0.3538.22155
Win32 Version: 1.0.0.20
CodeBase: file:///C:/Program Files (x86)/Intel/Intel(R) Management Engine Components/IMSS/AMT_SW_GUI.DLL
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box."
Буду признателен за любую помощь.
Ответ №1:
Ваша доступность.библиотека dll, скорее всего, повреждена. Вы не сможете удалить файл, даже будучи администратором.
Вы должны зайти в настройки безопасности и сменить владельца с TrustedInstaller на другого пользователя и предоставить себе права доступа к файлу. После завершения получите доступность.dll с рабочего компьютера и замените поврежденную версию.
Насколько я могу предположить, установщик из Microsoft повредил DLL, поскольку ни у одного пользователя нет прав на редактирование / удаление / замену файлов, принадлежащих TrustedInstaller.
Комментарии:
1. Это сработало отлично. Я недавно установил visual studio 2010 sp1 и visual studio 2010 sp1 sdk, так что, возможно, одна из этих установок вызвала мою проблему.