<p>aspnetcore.dll не удалось загрузить # 597</p>

Созданный на 20 июн. 2016  ·  89Комментарии  ·  Источник: dotnet/aspnetcore

Каждый раз при установке новой сборки система перестает корректно загружать dll aspnetcore.

Сообщение об ошибке в «Средстве просмотра событий»:
Не удалось загрузить DLL модуля C: \ WINDOWS \ system32 \ inetsrv \ aspnetcore.dll. Данные - ошибка.
Имя журнала: Приложение
Источник: IIS-W3SVC-WP
Уровень: Ошибка

Соответствующая системная информация:
Имя ОС: Microsoft Windows 10 Enterprise Insider Preview
Версия ОС: 10.0.14366 НЕТ Сборка 14366
Производитель ОС: Microsoft Corporation
Конфигурация ОС: рядовая рабочая станция
Тип сборки ОС: Многопроцессорная Бесплатная
Артикул: 00359-80000-00001-AA999
Исходная дата установки: 16.06.2016, 6:37:31
Время загрузки системы: 16.06.2016, 6:11:50
Производитель системы: Hewlett-Packard
Модель системы: рабочая станция HP Z420
Тип системы: ПК на базе x64
Процессор (ы): Установлен 1 процессор (ы).
Версия BIOS: Hewlett-Packard J61 v03.06, 27.03.2013
Каталог Windows: C: \ WINDOWS
Системный каталог: C: \ WINDOWS \ system32
Загрузочное устройство: \ Device \ HarddiskVolume1
Системный язык: en-us; английский (США)
Язык ввода: en-us; английский (США)
Часовой пояс: (UTC-08: 00) Тихоокеанское время (США и Канада)
Общий объем физической памяти: 16 307 МБ
Доступная физическая память: 7019 МБ
Виртуальная память: максимальный размер: 19 251 МБ
Виртуальная память: Доступно: 6 503 МБ
Виртуальная память: Используется: 12748 МБ
Расположение файла подкачки: C: \ pagefile.sys
Исправления: N / A
Сетевая карта: 1 сетевая карта установлена.
Требования Hyper-V: Расширения режима монитора ВМ: Да
Виртуализация включена в прошивке: нет
Преобразование адресов второго уровня: Да
Доступно предотвращение выполнения данных: Да

Самый полезный комментарий

Выполнение ремонта в Microsoft .NET Core 1.0.0 - VS 2015 Tooling Preview 2 плюс перезагрузка также помогли мне после установки юбилейного обновления.

Все 89 Комментарий

Открыт от имени @teovc.

@teovc подробности должны быть ниже «Данные - ошибка». в журнале событий.

В подробном представлении сообщения об ошибке есть следующее [см. Прикрепленное изображение].
Небольшой поиск в Bing показывает, что ошибка связана с 32-битными приложениями, но в пуле приложений эта опция включена.
capture
capture2

Ошибка указывает на то, что 32-разрядный пул приложений пытается загрузить 64-разрядный aspnetcore.dll. не могли бы вы поделиться информацией о файлах "C: \ Windows \ System32 \ inetsrv \ aspnetcore.dll" и "C: \ Windows \ SysWOW64 \ inetsrv \ aspnetcore.dll"

Не могли бы вы уточнить информацию, которую вы хотите видеть? (ака, это то, что вы ищете?)
capture
capture2

Файл выглядит правильно. Я установил ту же версию MSI, что и ваша, на коробку с Win 10 и заработал. Что-то не так с конфигурацией вашей машины. Не могли бы вы поделиться своими applicationhost.config и web.config.
В качестве обходного пути вы можете установить для параметра «Включить 32-разрядное приложение» значение false, чтобы посмотреть, помогает ли это.

DLL работают, проблема возникает, когда новая версия ОС устанавливается в рамках самостоятельного хостинга.
Прямо сейчас я использую веб-сайт по умолчанию (C: \ inetpub \ wwwroot). Прилагается файл web.config (с расширением txt, поскольку GitHub жалуется).
web.config.txt

Этот файл web.config не тот, который вы использовали для приложения ASP.NET Core, поскольку он не содержит никаких параметров модуля ASP.NET Core. Не могли бы вы попробовать удалить пакет ASP.NET Core, а затем переустановить его после обновления ОС, чтобы проверить, помогает ли это?

не могли бы вы поделиться applicationhost.config в папке C: \ Windows \ System32 \ inetsrv \ config. Это файл конфигурации IIS, в котором указывается путь к aspnetcore.dll.

Я попробую этот вариант. А пока вот файл applicationhost.config. Пожалуйста, имейте в виду, что решение на данный момент (ремонт или удаление / установка) занимает некоторое время, которое люди теряют. Лица, не входящие в организацию, могут не слишком сильно пострадать от проблемы, поскольку частота обновлений ОС реже, чем у кого-либо внутри организации. Спасибо.
applicationHost.config.txt

тот же вопрос ко мне
потому что приложение должно работать с 32-разрядной версией и Intergrate

Просто хотел добавить, что столкнулся с этой проблемой.
Когда вы говорите удалить «пакет ASP.NET Core», о какой части вы имеете в виду?

Я хочу запустить старое приложение в 32-битном режиме
также хотел изучить приложение ASP.NET Core
плохой способ удалить "пакет ядра ASP.NET", есть ли другой способ?

Всем привет,
Я удалил два пакета, связанных с ASP.NET Core, из Панели управления / Добавление и удаление программ, а затем позволил VS установить следующую версию ASP.NET Core (Microsoft.NET Core 1.0.0 - SDK Preview 2 (x64) , и Microsoft.NET Core 1.0.0 - VS 2015 Tooling Preview 2), и проблема все еще присутствует при установке новой версии ОС.

В VS2015 - Обновление 2 решение / проекты работают нормально, но когда я обновился до VS2015 - Обновление 3 вместе с обновлениями расширений, я столкнулся с этой проблемой. Итак, что-то другое, что сломало решение / проекты. Все проекты находятся в рамках .NET v4.6, здесь нет основных проектов / решений .NET. Несколько дней спустя, когда я клонировал исходный код из TFS, он работал без признаков ошибки. Странный. Это тоже не имеет смысла.

Просто хочу добавить, что я сталкиваюсь с этой проблемой каждый раз, когда выходит новая сборка Insider для Windows 10. Мне каждый раз приходится удалять / переустанавливать .Net Core. Если это не будет исправлено до запуска Anniversary Update 2 августа, разработчики будут сбиты с толку.

Та же проблема при обновлении с Win 8.1 до Win 10.
Исправлено удаление и повторная установка DotNetCore.1.0.0-VS2015Tools.Preview2.exe.

Достаточно было запустить «ремонт», чтобы он снова заработал. Мне не нужно было выполнять полное удаление / установку. Но я только что обновился до Anniversary Update и был немного расстроен, что сразу же столкнулся с этой проблемой.

То же самое после обновления до юбилейного обновления ...

Выполнение ремонта в Microsoft .NET Core 1.0.0 - VS 2015 Tooling Preview 2 плюс перезагрузка также помогли мне после установки юбилейного обновления.

Выполнение ремонта в Microsoft .NET Core 1.0.0 - VS 2015 Tooling Preview 2 плюс перезагрузка также помогли мне после установки юбилейного обновления.

Подтверждено, что это сработало для меня на сборке 14393.

Установленная предварительная версия 2 Tooling с https://www.microsoft.com/net/core#windows
Не нужно было перезагружать, просто запустил мой пул приложений, и мой веб-сайт снова заработал.

Выполнение ремонта в Microsoft .NET Core 1.0.0 - VS 2015 Tooling Preview 2 плюс перезагрузка также помогли мне после установки юбилейного обновления.

Спасибо, ремонт и перезапуск пула приложений помогли мне решить эту проблему. Выпуск начался после "Юбилейного обновления".

Та же проблема здесь - сломана после юбилейного обновления Windows 10 - то есть новое обновление ОС ломает ее.

В моем ящике модуль aspnetcore.dll был установлен как глобальный модуль, поэтому, когда IIS не смог загрузить DLL, он заблокировал запуск _все_ пулов приложений (включая повторные попытки пула приложений, достижение лимита повторных попыток, а затем отключение пула приложений .. . по одному ... всякий раз, когда каждый пул приложений пытается запуститься по первому запросу).

Это примерно так же далеко от преимуществ «изолированного развертывания xcopy для каждого приложения», насколько я могу себе представить: обновление ОС нарушает работу всех веб-приложений на компьютере разработчика.

У меня была дополнительная проблема, заключающаяся в невозможности восстановить или удалить Core Tooling Preview 2 (ошибка «учетная запись уже существует»). Выполнение ремонта на VS 2015, похоже, устранило проблему с загрузкой aspnetcore.dll.

Подтверждено, что это сработало для меня на сборке 14393.

Установленная предварительная версия 2 Tooling с https://www.microsoft.com/net/core#windows
Не нужно было перезагружать, просто запустил мой пул приложений, и мой веб-сайт снова заработал.

Это сработало для меня.
Мне нужно было установить и отремонтировать эти два элемента, потому что еще не было установлено ядро ​​.net, было только с IIS ...
Только установка у меня не прошла.

Здесь та же проблема и решение. Только что отремонтировал .NET Core 1.0.0 RC2, Tooling Preview 1.

Исправленный .NET Core 1.0.1 VS 2015 Tooling Preview 2 на моем компьютере устранил проблему.

только что было это с обновлением Windows 10 ver 1607 на этой неделе. Пришлось восстановить ".NET Core 1.0.0 RC2, Tooling Preview 1"
нашел эту страницу через stackoverflow http://stackoverflow.com/questions/37475214/net-mvc-4-project-fails-with-event-log-error-the-module-dll-c-windows-system3

Сегодня у меня была такая же проблема, и я, как и все здесь, отремонтировал .NET Core 1.0.1 VS 2015 Tooling Preview 2 на моем компьютере, исправив проблему. Однако странно то, что я только что установил этот инструмент сегодня, сразу после того, как установил какой-то патч обновления 3 для Visual Studio.

У меня та же проблема, что и я удалил все основные файлы .net на моем компьютере, чтобы выполнить свою устаревшую работу :(

Удалите .NET Core 1.0.0 RC2 SDK Preview1 (x64). затем Восстановите NET Core 1.0.0 RC2, предварительную версию Tooling 1.
работает на меня

Была такая же проблема после обновления до Windows 10 Anniversary. Исправление .NET Core 1.0.1 VS 2015 Tooling Preview 2 решило проблему. Мне также пришлось переустановить модуль перезаписи URL, который я установил, что вызывает аналогичную ошибку.

@freeboarder Привет, я пытаюсь найти шаги воспроизведения этой проблемы. С какой ОС вы обновляли свой компьютер до Windows 10 Anniversary, Windows 10 или Window 8.1? И, пожалуйста, объясните, что именно вы сделали для обновления до Windows 10, чтобы я мог сделать то же самое, чтобы воспроизвести проблему.

@freeboarder , Сегодня я попытался воспроизвести проблему, но не смог воспроизвести проблему. Вот что я сделал. Пожалуйста, дайте мне знать, если что-то не хватает для воспроизведения проблемы, с которой вы столкнулись.

  1. Подготовьте машину amd64 и установите Win10 RTM build 14393.0.160715
  2. Установить IIS
  3. Установить VS 2015 + VS Update3
  4. Перейдите на страницу https://www.micorosft.com/net/core#windows и установите «.NET Core 1.0.1 - VS 2015 Tooling Preview 2».
  5. Перезагрузите компьютер, чтобы обновить службы IIS и применить настройки инструмента Dotnet.
  6. Создайте образец приложения aspnetcore, разверните его в IIS и убедитесь, что все работает.
  7. Выберите «Настройки»> «Обновления и безопасность»> «Центр обновления Windows» и установите «Обновление для Windows 10 версии 1607 для систем на базе x64 (KB3176936).
  8. После обновления подтвердил, что все еще работает

@jhkimnew это произошло, когда на прошлой неделе произошло обновление Windows до версии 1607. У вас должна быть более старая версия Windows с установленным iis. Затем установите надстройку для перезаписи URL и предварительный просмотр инструментов .net. Они позволили Windows обновить до v1607. Он переконфигурирует iis и выдает упомянутую ошибку. Исправление инсталляций решает ошибку, но обновление действительно должно справиться. Во всяком случае, вот как я с этим столкнулся.

@FlapperMK Что вы имеете в виду под "переконфигурирует iis"?
Вы имеете в виду, что модуль aspnetcore.dll пропал? Или файл aspnetcore.dll пропал? Или оба?
При нормальном / успешном обновлении ОС IIS не должен сбрасывать свою конфигурацию и какие-либо файлы. Я уже подтвердил это на своих тестовых машинах.
Если вам известны действия по воспроизведению, сообщите мне об этом, чтобы мы могли изучить проблему.

Инструмент был установлен через Visual Studio. После обновления iis не удалось инициализировать из-за ошибок, указанных выше. У Iis все еще были указатели на инструменты, но что-то не было найдено где-то, вызывающее ошибку. Исправление при установке устранило проблему, и iis успешно инициализирован. До ремонта ничего не просматривалось.

@FlapperMK Чтобы я понял эту проблему, сообщите мне, существует ли файл% SystemRoot% \ system32 \ inetsrvaspnetcore.dll или нет, когда IIS не удается инициализировать. Причина, по которой я спрашиваю, заключается в том, что при обновлении ОС не следует удалять какие-либо существующие файлы в каталоге inetsrv. Если файл существует, но вы все равно получаете ошибку. вам следует дважды проверить, какой путь используется для файла aspnetcore.dll в файле% SystemRoot% \ system32 \ inetsrv \ config \ applicationhost.config. Если он указывает на другой путь, вам необходимо проверить, действителен ли настроенный путь или нет. По сути, я хочу понять, что произошло на самом деле.
Если файл существует и настроенный путь действителен, мы не можем сказать, что конфигурация IIS была сброшена путем обновления ОС, и может быть что-то еще происходит.

У меня был 10586. Установлен IIS. Установлен выпуск VS2015, со временем обновлен до последнего патча. Установлен только основной выпуск .net.

Затем Windows обновилась до 14393. Затем у меня возникла проблема с ядром IIS и .net, и мне пришлось переустановить это, чтобы исправить. Все на 64бит.

@realwarder , Можете еще раз воспроизвести проблему? Если да, то тот же вопрос и к вам. Чтобы я понял эту проблему, сообщите мне, существует ли файл% SystemRoot% \ system32 \ inetsrvaspnetcore.dll или нет, когда IIS не удается инициализировать. Причина, по которой я спрашиваю, заключается в том, что при обновлении ОС не следует удалять какие-либо существующие файлы в каталоге inetsrv. Если файл существует, но вы все равно получаете ошибку. вам следует дважды проверить, какой путь используется для файла aspnetcore.dll в файле% SystemRoot% \ system32 \ inetsrv \ config \ applicationhost.config. Если он указывает на другой путь, вам необходимо проверить, действителен ли настроенный путь или нет. По сути, я хочу понять, что произошло на самом деле. Если файл существует и настроенный путь действителен, мы не можем сказать, что конфигурация IIS была сброшена путем обновления ОС, и может быть что-то еще происходит.

@realwarder @FlapperMK
Это для вашего сведения. Aspnetcore.dll устанавливается при установке Aspnet Core. Aspnet Core - один из пакетов, включенных в инструментарий .Net Core VS.
Если на вашем компьютере установлен IIS, программа установки Aspnet Core установит aspnetcore.dll в каталог IISExpress и IIS. Если на вашем компьютере не установлен IIS, программа установки Aspnet Core установит aspnetcore.dll только в каталог IISExpress.

На моей тестовой машине файл aspnetcore.dll не был удален после установки обновления ОС. Я не вижу причин, по которым файл удаляется, если вы случайно не вызовете установку Aspnet Core для удаления aspnetcore.dll.

Если кто-нибудь может рассказать, как это сделать, дайте мне знать, и я проверю, в чем проблема. Пока я не вижу никаких последовательных шагов воспроизведения и попыток понять, что происходит на самом деле.
Прежде всего, я хотел бы проверить, был ли удален файл или нет, чтобы убедиться, что сообщение об ошибке не является ложной тревогой.

Мы также должны проверить отсутствие файлов схемы и записей applicationhost.config. @jhkimnew можешь описать, где их искать?

Вот информация о файле схемы.

Для IISExpress:
"% ProgramFiles% \ IIS Express \ config \ schema \ aspnetcore_schema.xml"

Для IIS:
"% windir% \ system32 \ inetsrv \ config \ schema \ aspnetcore_schema.xml"

Вот информация о файле aspnetcore.

Для IISExpress (x86 / amd64):
"% ProgramFiles% \ IIS Expressaspnetcore.dll"
"% ProgramFiles (x86)% \ IIS Expressaspnetcore.dll"

Для IIS (x86 / amd64):
"% windir% \ system32 \ inetsrvaspnetcore.dll"
"% windir% \ syswow64 \ inetsrvaspnetcore.dll"

А вот информация о файле конфигурации для модуля aspnetcore.dll.

Для IIS:
Модуль aspnetcore.dll настраивается в файле% windir% \ system32 \ inetsrv \ config \ applicationhost.config. Вы можете найти в нем файл aspnetcore.dll.

Для IISExpress:
Модуль aspnetcore.dll настраивается на.vs \ config \ applicationhost.config. Applicationhost.config по умолчанию не существует. Файл создается при запуске любого существующего проекта веб-приложения решения VS. Вы можете найти в нем файл aspnetcore.dll.

@jhkimnew Я не знаю наверняка, чего не хватало до ремонта, так как теперь я восстановил установку. В настоящее время на пораженном компьютере присутствует% SystemRoot% \ system32 \ inetsrvaspnetcore.dll. Оба файла схемы теперь также присутствуют.

журнал событий в то время просто показывает это.

Log Name:      Application
Source:        Microsoft-Windows-IIS-W3SVC-WP
Date:          22/09/2016 12:05:19
Event ID:      2280
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      ********
Description:
The Module DLL C:\WINDOWS\system32\inetsrv\aspnetcore.dll failed to load.  The data is the error.
Event Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Microsoft-Windows-IIS-W3SVC-WP" Guid="{670080D9-742A-4187-8D16-41143D1290BD}" EventSourceName="W3SVC-WP" />
    <EventID Qualifiers="49152">2280</EventID>
    <Version>0</Version>
    <Level>2</Level>
    <Task>0</Task>
    <Opcode>0</Opcode>
    <Keywords>0x80000000000000</Keywords>
    <TimeCreated SystemTime="2016-09-22T11:05:19.472744500Z" />
    <EventRecordID>1489</EventRecordID>
    <Correlation />
    <Execution ProcessID="0" ThreadID="0" />
    <Channel>Application</Channel>
    <Computer>********</Computer>
    <Security />
  </System>
  <EventData>
    <Data Name="ModuleDll">C:\WINDOWS\system32\inetsrv\aspnetcore.dll</Data>
    <Binary>7E000000</Binary>
  </EventData>
</Event>

@FlapperMK ,
Можете ли вы проверить файлы журнала установки, выполнив поиск «aspnetcoremodule»?
Вы можете сделать это, выполнив следующую команду.

cd% temp%
findstr / spi aspnetcoremodule *

В нормальной ситуации должны быть записи журнала для установки пакета AspNetCoreModule_x64.
Результат команды покажет имя файла (например, dd_DotNetCoreTools__20160926140846.log), как на снимке экрана ниже, который я получил с моей тестовой машины, и вы можете открыть файл журнала с помощью любой программы текстового редактора. Прочитав содержимое файла журнала установки с ключевым словом aspnetcoremodule, вы можете проверить, что произошло с программой установки пакета AspNetCoreModule до / после обновления ОС.

<> <> <> Пример результата команды findstr:
...
dd_DotNetCoreTools__20160926140846.log: [14D4: 14D8] [2016-09-26T14: 08: 47] i101: Обнаруженный пакет: AspNetCoreModule_x64, состояние: Отсутствует, кэшировано: Нет
...
<> <> <>

У меня была та же проблема, решение действительно заключалось в восстановлении установки _Microsoft .NET Core 1.0.1 - VS 2015 Tooling Preview 2_.

Вот мой результат findstr /spi aspnetcoremodule * до ремонта:

dd_DotNetCoreTools__20160920111929.log: [2AB0: 18E4] [2016-09-20T11: 19: 29] i101: Обнаруженный пакет: AspNetCoreModule_x86, состояние: Отсутствует, кэшировано: Нет
dd_DotNetCoreTools__20160920111929.log: [2AB0: 18E4] [2016-09-20T11: 19: 29] i101: Обнаруженный пакет: AspNetCoreModule_x64, состояние: Присутствует, кэшировано: Завершено
dd_DotNetCoreTools__20160920111929.log: [2AB0: 18E4] [2016-09-20T11: 19: 31] i201: Запланированный пакет: AspNetCoreModule_x86, состояние: Отсутствует, запрошено по умолчанию: Отсутствует, запрошено ba: Отсутствует, выполнить: Нет, откат: Нет, кеш : Нет, извлекать из кэша: нет, зависимость: нет
dd_DotNetCoreTools__20160920111929.log: [2AB0: 18E4] [2016-09-20T11: 19: 31] i201: Запланированный пакет: AspNetCoreModule_x64, состояние: Присутствует, запрошено по умолчанию: Присутствует, запрошено ba: Присутствует, выполнить: Нет, откат: Нет, кеш : Нет, извлекать из кеша: нет, зависимость: регистрировать
dd_DotNetCoreTools__20160920111929.log: [2530: 1988] [2016-09-20T11: 19: 33] i325: Регистрация зависимости: {b837b432-47cc-42bf-88e4-876d726dfb7c} в поставщике пакетов: IIS_AspNetCore_Module, Package:
dd_DotNetCoreTools__20160920112251.log: [0BB0: 0548] [2016-09-20T11: 22: 51] i101: Обнаруженный пакет: AspNetCoreModule_x86, состояние: Отсутствует, кэшировано: Нет
dd_DotNetCoreTools__20160920112251.log: [0BB0: 0548] [2016-09-20T11: 22: 51] i101: Обнаруженный пакет: AspNetCoreModule_x64, состояние: Присутствует, кэшировано: Завершено
dd_DotNetCoreTools__20160920112251.log: [0BB0: 0548] [2016-09-20T11: 22: 51] w327: не удаляет пакет: AspNetCoreModule_x64, найдены иждивенцы: 1
dd_DotNetCoreTools__20160920112251.log: [0BB0: 0548] [2016-09-20T11: 22: 51] i201: Запланированный пакет: AspNetCoreModule_x64, состояние: Присутствует, запрошено по умолчанию: Отсутствует, запрошено ba: Отсутствует, выполнить: Нет, откат: Нет, кеш : Нет, снять из кэша: Нет, зависимость: Отменить регистрацию
dd_DotNetCoreTools__20160920112251.log: [0BB0: 0548] [2016-09-20T11: 22: 51] i201: Запланированный пакет: AspNetCoreModule_x86, состояние: Отсутствует, запрошено по умолчанию: Отсутствует, запрошено ba: Отсутствует, выполнить: Нет, откат: Нет, кеш : Нет, снять из кэша: Нет, зависимость: Отменить регистрацию
dd_DotNetCoreTools__20160920112251.log: [00E8: 1294] [2016-09-20T11: 22: 52] i326: Удалена зависимость: {9b3936b0-e973-47b9-afb2-de7cd6501203} от поставщика пакетов: IIS_AspNetCore_Module, x64

И схема, и aspentcore.dll присутствовали на диске, а _applicationHost.config_ указывал на правильное место.

Не удалось загрузить код ошибки в журнале событий для _The Module DLL C: \ WINDOWS \ system32 \ inetsrvaspnetcore.dll. Данные являются ошибкой. _ Это: <Binary>7E000000</Binary>

@jhkimnew вот мой результат

dd_DotNetCoreTools__20160922122518.log: [3644: 372C] [2016-09-22T12: 25: 19] i101: Обнаруженный пакет: AspNetCoreModule_x86, состояние: Отсутствует, кэшировано: Нет
dd_DotNetCoreTools__20160922122518.log: [3644: 372C] [2016-09-22T12: 25: 19] i101: Обнаруженный пакет: AspNetCoreModule_x64, состояние: Присутствует, кэшировано: Завершено
dd_DotNetCoreTools__20160922122518.log: [3644: 372C] [2016-09-22T12: 25: 21] i000: установка строковой переменной 'WixBundleLog_AspNetCoreModule_x64' на значение 'C: \ Usersjdunn \ AppData \ Local \ TemporeC1800_Dot_Logo_Net \ Ddd002_Dot_Logs
dd_DotNetCoreTools__20160922122518.log: [3644: 372C] [2016-09-22T12: 25: 21] i201: Запланированный пакет: AspNetCoreModule_x86, состояние: Отсутствует, запрошено по умолчанию: Отсутствует, запрошено ba: Отсутствует, выполнить: Нет, откат: Нет, кеш : Нет, извлекать из кэша: нет, зависимость: нет
dd_DotNetCoreTools__20160922122518.log: [3644: 372C] [2016-09-22T12: 25: 21] i201: Запланированный пакет: AspNetCoreModule_x64, состояние: Присутствует, запрошено по умолчанию: Восстановить, запрошено ba: Восстановить, выполнить: Восстановить, откат: Нет, кеш : Нет, извлекать из кеша: нет, зависимость: регистрировать
dd_DotNetCoreTools__20160922122518.log: [319C: 10BC] [2016-09-22T12: 26: 38] i304: Проверена существующая полезная нагрузка: AspNetCoreModule_x64 по пути: C: \ ProgramData \ Package Cache {A0845055-ED2B-41CF-B7485-A0845055-ED2B-41CF-B7485-A 9.1965 \ пакеты \ aspnetcoremodule_x64_en_rc2_14.msi.
dd_DotNetCoreTools__20160922122518.log: [319C: 377C] [2016-09-22T12: 29: 28] i301: Применение пакета выполнения: AspNetCoreModule_x64, действие: Восстановить, путь: C: \ ProgramData \ Package Cache {A0845055-ED2B799-41CF-B0845055-ED2B799-41CF A5765C485F29} v0.9.1965 \ packages \ aspnetcoremodule_x64_en_rc2_14.msi, аргументы: 'ARPSYSTEMCOMPONENT = "1" MSIFASTINSTALL = "7"'
dd_DotNetCoreTools__20160922122518.log: [3644: 372C] [2016-09-22T12: 29: 33] i319: Примененный пакет выполнения: AspNetCoreModule_x64, результат: 0x0, перезапуск: нет
dd_DotNetCoreTools__20160922122518.log: [319C: 377C] [2016-09-22T12: 29: 33] i325: Регистрация зависимости: {22041006-8484-4b8d-a13c-40189695de2f} от поставщика пакета: IIS_AspNetCore_Module: xxx_AspNetCore_Module, пакет:
dd_DotNetCoreTools__20160922122518.log: [3644: 372C] [2016-09-22T13: 32: 49] i410: Переменная: WixBundleLog_AspNetCoreModule_x64 = C: \ Usersjdunn \ AppData \ Local \ TemporeCore_Net_Dd_Dot_Logo_02_Dot_Dot_Log_122_02_Dd_Dot_Dd_Dot_Dot_Dd_Dot_DB_D02

@jhkimnew В моем случае я никогда не создавал приложение ASP.NET Core, хотя инструменты были установлены на моем компьютере. У меня была Windows 7 x64 с приложением ASP.NET 4.0, работающим в 32-разрядном пуле приложений . После обновления до Windows 10 любая попытка загрузить приложение в этот пул приводила к ошибке. Я считаю, что, когда я отключил 32-битную опцию, ошибка исчезла, хотя для меня это не было хорошим решением, поскольку мое приложение требует загрузки как 32-битную. Надеюсь это поможет.

@reijerh В последней строке вашего вывода есть один интересный намек на проблему, с которой вы столкнулись int.
По каким-то причинам модуль aspnetcoremodule был удален (удален).
Не могли бы вы прикрепить файл dd_DotNetCoreTools__20160920112251.log, чтобы мы могли проверить, почему он был удален?

Конечно, для загрузки пришлось добавить расширение .txt. Также удалил мое имя пользователя из путей в журнале.

dd_DotNetCoreTools__20160920112251.log.txt

@reijerh, не могли бы вы приложить все журналы установки (все в% temp%, которое начинается с dd_DotNetCoreTools)

Да, обратите внимание, что к настоящему времени я уже отремонтировал Tooling Preview 2.

aspnetcore.zip

Я только что отсосал обновление Windows 10, а теперь IIS вообще не работает. Я получаю эту ошибку в средстве просмотра событий, когда пытаюсь зайти на любой его сайт, который я настроил в IIS:

Не удалось загрузить DLL модуля C: \ WINDOWS \ system32 \ inetsrvaspnetcore.dll. Данные - ошибка.

У меня точно такая же проблема. Один пул приложений перестает работать через несколько секунд каждый раз, когда я его запускаю. В журнале ошибок указано: Не удалось загрузить DLL модуля C: \ WINDOWS \ system32 \ inetsrvaspnetcore.dll. Вчера я установил обновление ASP .NET Core Visual Studio.

Если вы используете только Asp.Net, вам не нужен модуль aspnetcore.dll, и лучшим решением будет удалить этот параметр.

Я думаю, вы что-то здесь упустили. Возможно, я использовал или не использовал ASP.NET Core как часть IIS в прошлом, но я не менял никаких настроек вручную. Некоторое обновление Windows засосало то, что испортило IIS.

Единственный способ решить проблему - полностью удалить IIS, ASP.Net, перезагрузить компьютер, затем переустановить и снова перезапустить.

@reijerh Мы проверили файл журнала. Все отправленные вами файлы журналов были созданы после 20.09.2016.

При чтении файла журнала мы заметили, что вы обновили 1.0.0 до 1.0.1 20 сентября и исправили 1.0.1 28 сентября.
20 сентября не было предпринято никаких действий в отношении aspnetcore.dll, и мы не смогли найти никаких доказательств того, почему файл aspnetcore.dll был поврежден или удален.
1.0.0 и 1.0.1 имеют одинаковую версию aspnetcore.dll, и мы не удаляем и не устанавливаем файл при обновлении 1.0.0 до 1.0.1.
Итак, я полагаю, вы удалили файл aspnetcore.dll до 20 сентября.
Вы отправили все файлы журналов? Очевидно, вы не отправляли файлы журнала при установке 1.0.0, что происходит до 20 сентября. Чтобы понять, что происходит на самом деле, нам нужны все файлы журналов.
Если бы вы не очищали файлы журналов, создавали бы вы другой zip-файл, включающий все файлы журналов (.log), имя которых начинается с «dd_», чтобы мы могли понять, что произошло до 20 сентября?

Что такое% temp%?
Что такое ANCM?

В принципе, я понятия не имею. Раньше я устанавливал предварительные версии ASP.Net Core. Но на днях IIS был полностью обжарен - не только для экземпляров Core - для всех экземпляров. Это все, что я знаю.

В ПОРЯДКЕ. Вот мои логи:
https://dl.dropboxusercontent.com/u/79781769/Logs.7z

Что касается ANCM, о котором вы говорите, я установил несколько вещей. Довольно часто VS говорит мне: «Доступна новая версия .NET Core», поэтому я перехожу по ссылке, а она не работает. Итак, я гуглил и выслеживал другой установщик, который может работать, а может и не работать.

Я ничего не пропустил. Это все, что там было.

Нет, дело не в этом. На моей машине нет других пользователей.

Это слишком поздно сейчас. IIS поджарился. Многие люди собираются справиться с этим.

Теперь бесполезно плакать из-за пролитого молока. Людям просто нужно полностью удалить IIS и переустановить.

@MelbourneDeveloper Извините, но я решил удалить свое сообщение об выяснена основная причина. Я напишу еще одно после выяснения первопричины.

@jhkimnew извините, это все, что есть в моем _% temp% _, который начинается с _dd_dotnetcoretools_. Ой, подождите, вы хотите, чтобы все, что начинается с _dd__, в один момент.

Изменить: вот он, dd.zip

Приносим извинения за измененные временные метки файлов, которые были изменены анонимизацией.

@reijerh Похоже, вы потеряли файлы журнала, касающиеся 1.0.0. Мы не смогли найти никакой информации, почему aspnetcore.dll не удалось загрузить на ваш компьютер с предоставленными файлами журнала.

Если кто-то снова столкнется с проблемой, перед ремонтом инструментария .NetCore соберите следующую информацию и отправьте нам, чтобы мы могли понять, что происходит, когда проблема все еще возникает.

  1. Полное сообщение об ошибке события
    (К вашему сведению, с помощью ошибки события мы можем определить, какой файл aspnetcore.dll вызывает проблему:% windir% \ system32 \ inetsrvaspnetcore.dll или другой файл в другом каталоге)
  2. Убедитесь, что файл aspnetcore.dll, который был показан в сообщении об ошибке, не существует. Вы можете просто запустить «dir [путь к файлу aspnetcore.dll]», чтобы получить эту информацию. Если проблемный путь aspnetcore.dll начался из каталога% windir% \ system32 \ inersrv и на вашем компьютере установлена ​​64-битная ОС, проверьте, существует ли файл% windir% \ syswow64 \ inetsrvaspnetcore.dll или нет.
  3. Пожалуйста, подтвердите, существует ли файл aspnetcore_schema.xml. Файл схемы помещается в «% windir% \ System32 \ inetsrv \ config \ schema» для IIS или «% ProgramFiles% \ IIS Express \ config \ schema» для IISExpress.
    (К вашему сведению, мы хотели бы знать, удаляется ли только aspnetcore.dll или его файл схемы также удаляется вместе)
  4. Сообщите, в каком файле applicationatiohost.config есть проблемный параметр конфигурации файла aspnetcore.dll:% windir% \ system32 \ inetsrv \ config \ applicationhost.config или "путь к вашему решению" .vs \ config \ applicationhost.config. Вы можете открыть файл с помощью notepad.exe и выполнить поиск по aspnetcore.dll, чтобы найти эту информацию.
  5. Сообщите, пожалуйста, в следующих случаях, когда возникает эта проблема:
    1) После установки нового обновления Windows 10
    2) После обновления ОС с более ранней версии ОС
    3) После установки другого программного обеспечения, например новой версии .NetCore
  6. Если вы столкнулись с этой проблемой после установки нового обновления Windows 10 или после обновления ОС с более ранней версии ОС, сообщите нам, какая ОС и какая версия ОС у вас была до обновления ОС.
  7. Если вы столкнулись с этой проблемой после установки нового обновления Windows 10 или после обновления ОС с более ранней версии ОС, отправьте файл% windir% \ iis.log, который представляет собой файл журнала установки IIS с некоторой подробной информацией об активности установки IIS во время Обновление ОС
  8. Если до того, как эта проблема возникла, вы использовали aspnetcore.dll, сообщите нам, каким образом вы установили файл aspnetcore.dll в следующих случаях:
    1) Я установил последнюю версию .NetCore или другую старую версию.
    2) Я установил старую версию программы установки инструментария .NetCore (или пакета с другим именем).
    3) Я загрузил программу установки ANCM (модуль AspNetCore) (.msi) и запустил программу установки, чтобы установить aspnetcore.dll.
    4) Я скопировал файл aspnetcore.dll с другого компьютера на свой и настроил его вручную, не запуская никаких других установочных программ.
    5) Ни разу не устанавливал
    6) Не знаю, установил я или нет

@jhkimnew Если вы хотите воспроизвести себя, это довольно просто и происходит в 100% случаев при обновлении с одной сборки Windows 10 до более новой сборки (не путать с установкой накопительного обновления), если у вас уже есть последняя версия VS и инструменты установлены, и ваш сайт работает в IIS в 32-битном пуле приложений. Пример: Обновление с 1511 до 1607 (именно это и сделали большинство участников этого потока, чтобы столкнуться с этой проблемой ... хотя, если вы посмотрите на начало потока, вы увидите, что некоторые из нас предупреждают, что это будет проблемой, когда мы запустили в это с каждой новой сборкой, выпущенной для инсайдерской программы до запуска 1607). Если вы уже используете 1607, самый простой способ воспроизвести это - присоединиться к инсайдерской программе и обновить инсайдерскую сборку до последней инсайдерской сборки. Это случится. Я не уверен, что журналы ядра .net что-то покажут вам, поскольку проблема возникает при обновлении сборок Windows, а не при установке ядра .net. Восстановление ядра .net всегда исправляет это.

Чтобы воспроизвести с нуля (или, скажем, в виртуальной машине):

  1. Установите Windows 10 1511 или более раннюю.
  2. Добавьте IIS и .Net и MVC.
  3. Установите Visual Studio 2015 и все обновления инструментов MVC (это установит aspnetcore).
  4. Создайте демонстрационное приложение MVC и установите его в IIS, настроив его пул приложений для работы в 32-битном режиме.
  5. На этом этапе все должно работать идеально.
  6. С помощью Центра обновления Windows обновите до Windows 10 1607.
  7. Выгода. Или, скорее ... наслаждайтесь этой ошибкой при первой попытке запустить 32-битный сайт mvc (который даже не требует / не использует .netcore).

@BryanTheCrow не воспроизводится на всех машинах. У меня есть два еженедельных обновления, которых еще не было.

@Tratcher Интересно. Попробуем зафиксировать разницу. На тех машинах, которые недавно обновляли сборки, вы также:

  1. Установлены ли Visual Studio 2015 + обновление 3 + MVC + Tooling Updates (включая dotnetcore)?
  2. Установлены ли IIS
  3. Настройте сайт MVC (не dotnetcore) в IIS
  4. Используйте 32-битный пул приложений для этого сайта

1 да, 2 да, 3 нет - я в первую очередь тестирую основные сайты. 4 шт.

@BryanTheCrow Если вы можете воспроизвести проблему, не могли бы вы собрать информацию, о которой я спрашивал выше? И обратите внимание, как изменяется файл aspnetcore.dll до / после обновления ОС. Чтобы увидеть это, перед обновлением ОС вам необходимо проверить, есть ли на вашем компьютере% windir% \ system32 \ inetsrvaspnetcore.dll и% windir% \ syswow64 \ inetsrvaspnetcore.dll, и записать размер файла. А потом сравните после обновления ОС.

@Tratcher Вполне уверен, что это влияет только на 32-битный dotnetcore.dll. Интересно, переключили ли вы один из пулов приложений iis своего сайта на 32-битный, можно ли было бы воспроизводить на одной из этих машин? В противном случае может потребоваться обычное приложение mvc.

@jhkimnew Я не планировал снова запускать инсайдерские сборки в течение нескольких месяцев (мне нравится ждать, пока не

Поскольку вы, кажется, исследуете исправление, я просто предположил, что вы хотите воспроизвести для себя. Если нет, то в следующий раз, когда я установлю новую сборку, я проверю, не воспроизвел ли кто-нибудь еще, и опубликую ответы на все ваши вопросы выше.

@BryanTheCrow Что такое dotnetcore.dll? Может опечатка для aspnetcore.dll?
А пока не могли бы вы отправить журнал% windir% \ iis.log на свой компьютер и сообщить, когда вы обновили ОС, чтобы мы могли посмотреть, что произошло в тот день, с помощью журнала установки IIS.
И, пожалуйста, объясните, что мне нужно сделать для «обновлений MVC + Tooling» на этапе воспроизведения «Visual Studio 2015 + Update 3 + MVC + Tooling Updates».
Существует несколько сборок пакетов Tooling, поэтому я хотел бы выполнить те же шаги, что и вы, и поэтому мне нужна подробная информация, как это сделать.

@jhkimnew Да, извините ... быстрый набор текста по памяти. Моя ошибка.

Извините, моя память немного нечеткая, так как я явно не пытался установить ASP.Net Core. Он пришел с одним из других обновлений или, возможно, даже с первоначальной установкой VS2015. Я не думаю, что имеет значение то, как вы его устанавливаете, просто то, что вы его устанавливаете ... Тем не менее, вот шаги, которые я помню ... многие из этих шагов могут не потребоваться для воспроизведения, но в интересах в завершение я их включу:

  1. В Win 10 Pro (до выпуска rs1) с помощью Turn Windows features / on / off и config со следующим отмеченным (пропустите Hyper-V, если хотите. Я знаю, что сталкивался с этим с / без него):
  2. Установите Visual Studio 2015 с обновлением 3 и обновите до последних выпусков, следуя подсказкам обновления в диалоговом окне расширений и обновлений (и маленьком флажке в правом верхнем углу) ... Я помню, что требовалось обновление Azure. Возможно, он установил aspnetcore ... Я не помню, чтобы явно устанавливал его ... Я думаю, что он был в комплекте с VS 2015 или с одним из начальных обновлений инструментов. Я использую VS Enterprise, если это имеет значение.
  3. Используя диалоговое окно расширений и обновлений VS 2015, дважды проверьте, установлены ли у вас Microsoft ASP.NET и веб-инструменты, а также веб-платформы и инструменты Microsoft ASP.NET (я помню, что они уже были установлены при установке VS2015, но я могу ошибаться, так что стоит перепроверить). Если нет, установите их.
  4. Использование установщика веб-платформы Установите установщик языкового пакета MVC3 и URLRewrite 2.0
  5. Перезагрузить.
  6. Используя Центр обновления Windows, установите обновления безопасности (но пока не обновляйте сборки).
  7. Настройте базовый сайт MVC 4 (например, шаблон / демонстрационное приложение) в IIS.
  8. Настройте пул приложений для работы в 32-битном режиме.
  9. Убедитесь, что это работает.

В тот момент мне оставалось только воспроизвести процесс обновления Windows, чтобы перейти на новую сборку. После обновления я получал ошибки при попытке загрузить как модуль DotNetCore, так и модуль URLRewrite, убивая пул приложений при первой попытке загрузить страницу. Восстановление обоих в «Установка и удаление программ» исправляет их.

Вот мой текущий журнал IIS. Я не уверен на 100%, но я считаю, что я сделал чистую установку 1607, когда она вышла и переконфигурирована с нуля, поэтому я не уверен, что это будет полезно.

iislog.zip

Интересно, стоит ли смотреть в% windir% \ Windowsupdate.log, чтобы увидеть, есть ли какие-либо следы, показывающие, что обновление изменило на машине. IIS - это функция ОС, поэтому вполне возможно, что обновление ОС может повлиять на это и не обязательно учитывать дополнительные элементы, которые были установлены, например ANCM.

возможно, что обновление ОС может повлиять на это и не обязательно учитывать дополнительные элементы, которые были установлены, например ANCM.

@joeloff, что, безусловно, похоже на то, что здесь происходит, поскольку это также влияет на URLRewrite 2.0. Модули, установленные через «Включение / выключение компонентов Windows», не имеют проблем. Но что-то в процессе обновления сборки убивает некоторые, но не все, модули при попытке использовать их в 32-битном пуле приложений.

@BryanTheCrow Хорошо, я нашел последовательный шаг воспроизведения с соблюдением ваших шагов воспроизведения. Спасибо большое за вашу помощь. Мне удалось воспроизвести эту проблему на моем компьютере. Когда возникает эта проблема, aspnetcore.dll в каталоге% windir% \ syswow64 \ inetsrv исчезает после обновления ОС.
Я продолжу расследование с помощью команды IIS относительно обновления ОС и сообщу вам об этой проблеме в ближайшее время.

@jhkimnew Рад это слышать. Надеюсь, из этого получится что-то простое. 👍🏻

Похоже, IIS нужно лучшее сообщение об ошибке с правильным путем к файлу! :)

У меня было это на годовщине Windows 10, не участвующей в программе предварительной оценки. Переустановка ядра aspnet не устранила его, но удалила все элементы ядра aspnet из программы и компонентов.

Похоже, это ломает настоящие производственные машины - я потерял несколько часов, пытаясь исправить это, в то время как я должен был выполнять срочную работу. Я даже не верю, что решил использовать предварительный просмотр на своей производственной машине; VS это сделал?

@DanTup Да, это запускается при любом обновлении сборки Windows 10 (включая юбилейное обновление). Инсайдерские обновления - это самый простой способ воспроизведения для тех, кто уже использует 1607, поскольку они выпускают новую сборку еженедельно, а не два раза в год.

Восстановление «Microsoft .NET Core 1.0.1 - VS 2015 Tooling Preview 2» с помощью «Программы и компоненты» устраняет необходимость удаления всех элементов (хотя это тоже будет работать).

@BryanTheCrow Это судя по твиту, который я

Ремонт вроде не помогал; несколько раз пробовал включая перезагрузки :-(

Моя вера в качество кода MS падает с каждым месяцем; мы тратим больше времени, чем когда-либо, на борьбу с чужими проблемами, и, кажется, никого это не волнует: - /

Не волнуйся, @DanTup. @jhkimnew (см. выше) недавно подтвержден / воспроизведен и работает с различными участвующими командами, чтобы разобраться в этом. Я оптимистично настроен, что они исправят ошибку до выхода 1703 года.

Спасибо всем, кто сообщил об этой проблеме.

Основная причина

Ошибка в пути обновления IIS. Файлы, не относящиеся к ОС, в каталоге C:\Windows\SysWOW64\inetsrv не сохраняются во время обновления ОС. Если у вас есть какие-либо модули IIS, которые не поставлялись как часть Windows, и помещают файлы в каталог inetsrv , они будут повреждены. Модуль ASP.NET Core, обработчик платформы HTTP, перезапись URL, набор инструментов для оптимизации SEO - это модули IIS, которые сломаются во время обновления ОС. С этой проблемой можно столкнуться, если вы используете и другие сторонние модули.

Когда я сталкиваюсь с этой проблемой?

Если у вас был установлен какой-либо из вышеупомянутых модулей до обновления вашей ОС, а затем попробуйте запустить любой пул приложений в 32-битном режиме после обновления ОС.
Вы столкнетесь с этой проблемой, даже если ваше приложение не использует недоступный модуль.

Какая работа?

Восстановите все модули, которые были затерты во время обновления вашей ОС.

Как узнать, какие модули отсутствуют?

Вы должны увидеть ошибку в средстве просмотра событий.

Log Name:      Application
Source:        Microsoft-Windows-IIS-W3SVC-WP
Date:          10/17/2016 5:42:22 PM
Event ID:      2280
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      repro-machine
Description:
The Module DLL C:\WINDOWS\system32\inetsrv\rewrite.dll failed to load.  The data is the error.
Event Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Microsoft-Windows-IIS-W3SVC-WP" Guid="{670080D9-742A-4187-8D16-41143D1290BD}" EventSourceName="W3SVC-WP" />
    <EventID Qualifiers="49152">2280</EventID>
    <Version>0</Version>
    <Level>2</Level>
    <Task>0</Task>
    <Opcode>0</Opcode>
    <Keywords>0x80000000000000</Keywords>
    <TimeCreated SystemTime="2016-10-18T00:42:22.911610400Z" />
    <EventRecordID>589</EventRecordID>
    <Correlation />
    <Execution ProcessID="0" ThreadID="0" />
    <Channel>Application</Channel>
    <Computer>repro-machine</Computer>
    <Security />
  </System>
  <EventData>
    <Data Name="ModuleDll">C:\WINDOWS\system32\inetsrv\rewrite.dll</Data>
    <Binary>7E000000</Binary>
  </EventData>
</Event>

Когда вы его исправите?

Мы тестируем исправление прямо сейчас, я обновлю это пространство, когда смогу поделиться конкретной датой / сборкой Windows, в которой это будет исправлено

Эта проблема исправлена ​​в сборке Windows Insider Build 15002.

Стоит отметить, что даже несмотря на то, что сообщение об ошибке гласит: «Не удалось загрузить DLL модуля C:\WINDOWS\system32\inetsrv\rewrite.dll », фактически отсутствующим файлом является C:\WINDOWS\syswow64\inetsrv\rewrite.dll . Доступ к каталогу system32 32-разрядным рабочим процессом IIS перенаправляется на syswow64 .

Так же, как и эта проблема, и я исправил это для меня, так это отредактировал пул приложений (по умолчанию)
image
отключение 32 приложений перерабатывает пул приложений, и это сработало. остановил пул приложений, снова включив 32-битную поддержку, и он все еще работает, возможно ли, что что-то было просто неправильно установлено после обновления 10-летия победы?

@GMZ Похоже, ваш рабочий процесс не был перезапущен после повторного включения 32-битной поддержки. Попробуйте принудительно перезапустить пул приложений, и эта проблема все равно не исчезнет.

https://www.microsoft.com/net/core#windows
скачать
.NET Core 1.0.1-VS 2015 Tooling Preview 2
И установить

Эта проблема исправлена ​​в сборке Windows Insider Build 15002.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги