С# ASP.NET InvalidProgramException: Common Language Runtime обнаружил недопустимую программу

Я получаю указанное выше исключение, пытаясь «начать с отладки» веб-приложения ASP.NET MVC, используя .NET 4.5 и ориентируясь на «любой процессор». Все другие вопросы, которые я нашел по этой проблеме, похоже, точно знают, где в приложении возникает проблема, но трассировка стека ничего для меня не значит, поскольку в ней не упоминается какой-либо мой собственный написанный код (см. Ниже: )

[InvalidProgramException: Common Language Runtime detected an invalid program.]
   System.Windows.Markup.XmlnsPrefixAttribute..ctor(String xmlNamespace, String prefix) +0
   System.Reflection.CustomAttribute._CreateCaObject(RuntimeModule pModule, IRuntimeMethodInfo pCtor, Byte** ppBlob, Byte* pEndBlob, Int32* pcNamedArgs) +0
   System.Reflection.CustomAttribute.CreateCaObject(RuntimeModule module, IRuntimeMethodInfo ctor, IntPtr& blob, IntPtr blobEnd, Int32& namedArgs) +38
   System.Reflection.CustomAttribute.GetCustomAttributes(RuntimeModule decoratedModule, Int32 decoratedMetadataToken, Int32 pcaCount, RuntimeType attributeFilterType, Boolean mustBeInheritable, IList derivedAttributes, Boolean isDecoratedTargetSecurityTransparent) +589
   System.Reflection.CustomAttribute.GetCustomAttributes(RuntimeAssembly assembly, RuntimeType caType) +103
   System.Reflection.RuntimeAssembly.GetCustomAttributes(Boolean inherit) +33
   Owin.Loader.DefaultLoader.SearchForStartupAttribute(String friendlyName, IList`1 errors, Boolean& conflict) +294
   Owin.Loader.DefaultLoader.GetDefaultConfiguration(String friendlyName, IList`1 errors) +105
   Owin.Loader.DefaultLoader.LoadImplementation(String startupName, IList`1 errorDetails) +161
   Owin.Loader.DefaultLoader.Load(String startupName, IList`1 errorDetails) +51
   Microsoft.Owin.Host.SystemWeb.OwinBuilder.GetAppStartup() +238
   Microsoft.Owin.Host.SystemWeb.OwinHttpModule.InitializeBlueprint() +103
   System.Threading.LazyInitializer.EnsureInitializedCore(T& target, Boolean& initialized, Object& syncLock, Func`1 valueFactory) +86
   System.Threading.LazyInitializer.EnsureInitialized(T& target, Boolean& initialized, Object& syncLock, Func`1 valueFactory) +72
   Microsoft.Owin.Host.SystemWeb.OwinHttpModule.Init(HttpApplication context) +104
   System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) +418
   System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) +172
   System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) +336
   System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) +296

[HttpException (0x80004005): Common Language Runtime detected an invalid program.]
   System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +9930568
   System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +101
   System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +254

Может ли кто-нибудь сказать мне, как я могу узнать, где и когда выбрасывается исключение? Он даже не загружает домашнюю страницу перед тем, как ее бросить, и не взламывает код файла startup.cs, так что мне особо нечего сказать.

Я новичок в разработке ASP.NET MVC, поэтому отладка ранее не встречавшихся исключений довольно сложна, и я был бы очень признателен за любую помощь в этом вопросе!

ОБНОВЛЕНИЕ: я пытаюсь запустить веб-приложение, созданное в Visual Studio 2013, в Firefox с использованием IIS Express на 64-разрядном компьютере с Windows 8.1 Professional, та же конфигурация, которая работала для того же веб-приложения неделю назад. С тех пор я внес изменения в модели и контроллеры MVC, но не изменил ничего, что могло бы повлиять на его развертывание/отладку в такой степени. Мне просто нужно знать, как получить больше информации о том, где генерируется исключение.


person RockShayde    schedule 28.03.2015    source источник


Ответы (1)


На сайте Microsoft есть статья:

Основная причина в том, что вы пытаетесь запустить программу в среде на базе Windows XP.

Код ошибки 0x80004005

Эта проблема может возникнуть, если файл, который требуется Windows Product Activation (WPA), поврежден или отсутствует. Это происходит, если выполняются одно или оба из следующих условий: - Сторонняя утилита резервного копирования или антивирусная программа мешают установке Windows XP. - Файл, который требуется WPA, изменен вручную.

person VMAtm    schedule 28.03.2015
comment
Неделю назад веб-приложение работало нормально, и, хотя за это время я внес изменения, я не изменил никаких параметров конфигурации, которые могли бы сделать его нацеленным на среду на основе XP (насколько я знаю). Я могу проверить конфигурацию программы, если вы можете сказать мне, где искать в моем решении VS2013? Я обновил вопрос с более подробной информацией. - person RockShayde; 28.03.2015