Dism ошибка 11 была сделана попытка загрузить программу имеющую неверный формат

Обновлено: 03.07.2024

Если быстродействие компьютера значительно снизилось, но утилита SFC не смогла решить проблему, то следует воспользоваться системным инструментом DISM для восстановления образа Windows.

Windows 10 включает полезную утилиту командной строки, которая называется “Система обслуживания образов развертывания и управления ими” (Deployment Image Servicing and Management, DISM). Данный инструмент появился еще в Windows Vista. В Windows 10 и Windows 8.1 инструмент DISM установлен по умолчанию.

Утилиту можно использовать для восстановления и подготовки образов Windows, включая среду восстановления Windows, программу установки Windows и Windows PE. Также DISM можно использовать для исправления образа восстановления системы с помощью текущей установки ОС и даже для обслуживания виртуального жесткого диска.

Если на компьютере стали постоянно появляться ошибки, и вы стали замечать проблемы во время загрузки, то можно воспользоваться средством проверки системных файлов (System File Checker, SFC) для анализа целостности системных файлов и замены поврежденных и пропущенных файлов на рабочую копию.

В этом руководстве мы представим пошаговые инструкции по использованию DISM для возвращения стабильного и работоспособного состояния системы.

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

Инструкции: Резервное копирование с помощью программ: Acronis True Image 2020, AOMEI Backupper Standard, Macrium Reflect Free Edition и O&O DiskImage 15 Pro.

Как работать с командами DISM в Windows 10

При работе с DISM предлагается три основные опции для восстановления образа Windows: CheckHealth, ScanHealth и RestoreHealh. Важно использовать их именно в таком порядке.

Использование опции CheckHealth в DISM

Команда /CheckHealth в DISM позволяет обнаруживать повреждения образа. Данная команда используется только для поиска повреждений, но не выполняет операций исправления проблем.

Чтобы запустить данную команду проделайте следующие шаги:

1. Введите в поиске меню Пуск Командная строка, нажмите правой кнопкой мыши по появившейся ссылке и выберите Запустить от имени администратора, потому что для запуска DISM требуются права администратора устройства.

2. В Командной строке введите следующую команду и нажмите Enter:

CheckHealth

Использование опции ScanHealth в DISM

Команда /ScanHealth в DISM позволяет сканировать образ Windows на предмет каких-либо повреждений. В отличие от /CheckHealth, проверка /ScanHealth может занимать до 10 минут.

Чтобы запустить данную команду проделайте следующие шаги:

1. Введите в поиске меню Пуск Командная строка, нажмите правой кнопкой мыши по появившейся ссылке и выберите Запустить от имени администратора.

2. В Командной строке введите следующую команду и нажмите Enter:

ScanHealth

Использование опции RestoreHealth в DISM

Команда /RestoreHealth в DISM позволяет автоматически проводить процедуру восстановления поврежденных образов Windows. В отличие от /ScanHealth, проверка /RestoreHealth может занимать до 10 минут.

Чтобы запустить данную команду проделайте следующие шаги:

1. Введите в поиске меню Пуск Командная строка, нажмите правой кнопкой мыши по появившейся ссылке и выберите Запустить от имени администратора.

2. В Командной строке введите следующую команду и нажмите Enter:

RestoreHealth

Примечание: во время запуска /RestoreHealth или /ScanHealth, вы можете заметить зависание процедуры между 20% или 40% – это абсолютно нормальное поведение.

При запуске команды /RestoreHealth DISM попытается использовать Центр обновления Windows для замены поврежденных файлов. Тем не менее, если проблема распространилась на компоненты Центра обновления Windows, тогда нужно указать альтернативный источник рабочих версий файлов для восстановления образа.

Использование опций RestoreHealth и Source в DISM

Вы можете указать новое расположение для рабочих версий файлов с помощью оператора /Source рядом с /RestoreHealth.

Прежде чем вы сможете использовать команды восстановления, вам нужно подготовить копию файла install.wim с другого компьютера, установочного носителя Windows 10, либо файла ISO Windows 10. Также очень важно, чтобы источник рабочих версий файлов соответствовал той же версии, редакции и языку операционной системы, которая используется на компьютере.

Вы можете загрузить ISO-образ Windows 10 инструкции ниже:

Примечание: не забудьте заменить “repairSource” на путь к источнику рабочих версий файлов. Например: E:\Sources\install.wim .

Теперь можно запустить команду для исправления образа Windows:

1. Введите в поиске меню Пуск Командная строка, нажмите правой кнопкой мыши по появившейся ссылке и выберите Запустить от имени администратора.

2. В Командной строке введите следующую команду и нажмите Enter:

Можно использовать следующую команду для ограничения использования службы Windows Update:

В качестве альтернативы можно использовать следующую команду для выполнения той же задачи:

Команда запустит восстановление образа Windows с использованием рабочих версий файлов, включенных в файл install.wim, с установочного носителя Windows 10. При этом Центр обновления Windows не будет применяться в качестве источника для загрузки необходимых файлов для восстановления.

Использование DISM с файлом install.ESD

Кроме того, вы можете не только указать путь, указывающий на install.wim, но вы также можете использовать файл install.esd, который представляет собой зашифрованную версию образа Windows.

Если вы обновились до Windows 10 с предыдущей версии операционной системы, установочные файлы могут все еще храниться на диске C: это означает, что у вас может быть источник исправных файлов.

Чтобы использовать файл install.esd для восстановления образа Windows на вашем компьютере, выполните следующие действия:

1. Введите в поиске меню Пуск Командная строка, нажмите правой кнопкой мыши по появившейся ссылке и выберите Запустить от имени администратора.

2. В Командной строке введите следующую команду и нажмите Enter:

Можно использовать следующую команду для ограничения использования службы Windows Update:

В качестве альтернативы можно использовать следующую команду для выполнения той же задачи:

Если файл install.esd расположен на другом диске, используйте следующую команду:

Примечание: не забудьте заменить “repairSource” на путь к источнику исправных версий файлов. Например: E:\Sources\install.esd .

Утилита “Система обслуживания образов развертывания и управления ими” всегда создает файл журнала по пути %windir%/Logs/CBS/CBS.log , который содержит все исправленные и обнаруженные проблемы.

Описанные выше инструкции относятся только к восстановлению образа системы. Для исправления проблем в Windows используйте средство проверки системных файлов SFC.

1. Введите в поиске меню Пуск Командная строка, нажмите правой кнопкой мыши по появившейся ссылке и выберите Запустить от имени администратора, потому что для запуска SFC требуются права администратора устройства.

2. В Командной строке введите следующую команду и нажмите Enter:

Как проверить и восстановить системные файлы в Windows 10

Примечание: для устранения проблемы может потребоваться до трех запусков SFC.

Утилита SFC просканирует и восстановит поврежденные системные файлы в Windows 10. Для подробного ознакомления и возможностями инструмента прочитайте инструкцию.

Я вызываю функции из 32-разрядной неуправляемой DLL на 64-разрядной системе. Что я получаю это:

BadImageFormatException: была сделана попытка загрузить программу с неверным форматом. (Исключение из HRESULT: 0x8007000B)

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

библиотеки DLL не повреждены или что-то еще, потому что я могу использовать их с другими программами (что у меня нет источника). Я думал, что, возможно, это не было найти зависимость, но я проверил, и они все там. Кроме того, разве это не бросит DllNotFoundException в этом случае?

что еще я могу сделать? И прежде чем вы скажете: "вместо этого используйте 64-разрядную неуправляемую DLL", позвольте мне указать, что ее нет. ;)

enter image description here

при попытке запустить 32-разрядные приложения на IIS 7 (и / или 64-разрядной ОС), вы получите ту же ошибку. Итак, из IIS 7 щелкните правой кнопкой мыши на пуле приложений приложений и перейдите в раздел "Дополнительные настройки" и измените "включить 32-разрядные приложения" на "TRUE".

перезагрузите ваш сайт и он должен работать.

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

на Visual Studio, щелкните правой кнопкой мыши проект -> на левой панели нажмите кнопку Build tab,

под Целевой Платформы выберите x86 (или в более общем плане архитектура чтобы соответствовать библиотеке, на которую вы ссылаетесь)

надеюсь, это кому-то поможет! :)

У меня тоже была эта проблема. Пробовал все предложения здесь, но они не помогли.

Я нашел еще одну вещь, чтобы проверить, что установил его для меня. В Visual Studio щелкните правой кнопкой мыши на проекте и откройте "Свойства". Нажмите на вкладку "компиляция", а затем нажмите на кнопку" Дополнительные параметры компиляции " в нижней части.

Проверьте выпадающее меню "целевой процессор". Он должен соответствовать "платформе", которую вы строите. То есть, если вы создаете "любой процессор", то "целевой процессор" должен сказать " любой ЦПУ." Пройдите через все ваши платформы, сделав их активными и проверьте эту настройку.

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

перейдите в раздел: Инструменты > Параметры > проекты и решения > веб-проекты > используйте 64-разрядную версию IIS Express

Если вы используете любой ЦП, вы можете столкнуться с этой проблемой, если предпочитаю 32-бит проверил:

убедитесь, что вы убрать этот параметр в свойства проекта Build tab!

см. Также ответ, которые решали ту же проблему для меня.

опубликовано Luis Mack на 5/12/2010 в 8: 50 AM я нашел ту же проблему, только для конкретного проекта при компиляции на 64-разрядной машине. Исправление, которое, кажется, работает, чтобы вручную изменить один символ в потоке изображений каждый раз, когда usercontrol или форма редактируется в конструкторе

заменить на

это 00LjAuMC4w на 0yLjAuMC4w в конце строки (00 назад к 0y)

в моем случае, я использую крошечный .exe, который загружает библиотеки DLL, которые ссылаются посредством отражения. Поэтому я просто делаю эти шаги, которые спасают мой день:

в свойствах проекта в обозревателе решений щелкните на вкладке построить, Я выбираю целевая платформа х86

в моем случае я запускал тесты через MSTest и обнаружил, что я развертываю как 32-разрядную, так и 64-разрядную DLL в тестовый каталог. Программа предпочитала 64-разрядную DLL и вызывала ее сбой.

TL; DR убедитесь, что вы развертываете только 32-разрядные библиотеки DLL для тестов.

Я получил эту проблему решена в "Windows" Способ. После проверки всех моих настроек, очистки решения и его восстановления я просто закрываю решение и снова открываю его. Затем это сработало, поэтому VS, вероятно, не избавился от некоторых вещей во время очистки. Когда логические решения не работают, я обычно обращаюсь к нелогичным (или кажущимся нелогичными). Окна меня не подводят. :)

в моем случае это было неправильное содержимое файла. DLL был загружен из интернета, но содержание DLL было HTML page :D Попробуйте проверить, если это двоичный файл, если это кажется правильным DLL :)

ERROR_BAD_FORMAT: фон

Код ошибки ERROR_BAD_FORMAT affects затрагивает в основном машины Windows 7, но иногда это также может происходить в Windows 10. Обычно это происходит, когда пользователи пытаются запустить приложение или программу на своих ПК или серверах Windows.

Код ошибки 11 часто вызывается проблемами с распространяемым пакетом VS, проблемами несовместимости программ, неправильными изменениями реестра и т. Д.

Решение 1. Включение 32-разрядной совместимости

Пользователи сообщают, что эта ошибка в основном возникает из-за проблем несовместимости DLL, вызванных приложениями, работающими в Visual Studio, установленными в 64-разрядных операционных системах со значением TargetCPU = Any CPU. Другими словами, приложения пытаются загрузить библиотеки DLL, созданные для 32-разрядных платформ, на компьютерах x64 и наоборот.

  1. Загрузите CORFLAGS со страницы поддержки Microsoft
  2. Запустите его следующим образом, чтобы включить 32-битный режим выполнения: corflags utility.exe/32Bit +
  3. Используйте/32Bit- в приведенной выше командной строке, чтобы выключить его.

Вы также можете включить 32-битную совместимость в приложении формы Windows. Просто щелкните правой кнопкой мыши Project> перейдите в Properties> Build> check Prefer 32-bit.

Кроме того, вы также можете использовать опцию «Любой процессор» и использовать выделенный код, чтобы определить, какую DLL использовать. Таким образом, вы будете использовать одну сборку для обработки как 32-битных, так и 64-битных платформ. Вот код для использования:

if (Environment.Is64BitProcess)

// вызов MiniDumpWriteDump
>
еще

// вызов MiniDumpWriteDumpX86
>

Вы также можете использовать условия препроцессора, но в этом случае вам нужно скомпилировать две разные сборки. Другими словами, скомпилируйте 32-разрядную сборку для 32-разрядных платформ и отдельную 64-разрядную сборку для 64-разрядных платформ.

Решение 2. Установите правильный распространяемый пакет VS

На вашем целевом ПК может не быть установлен соответствующий распространяемый пакет VS. Перейдите на веб-страницу Microsoft и установите соответствующую версию VS Redistributable Package в вашей системе.

В Windows 10 ошибка «Попытка загрузить программу с неверным форматом» обычно возникает при запуске и связана с проблемами несовместимости программного обеспечения. Пользователи подтверждают, что эта проблема часто возникает при использовании инструментов замены в меню «Пуск».

Если вы используете замену меню «Пуск» в Windows 10, удалите его, и это должно помочь.

Вы также можете использовать средство проверки системных файлов Microsoft для проверки повреждений системных файлов. Вот как запустить сканирование SFC:

1. Перейдите в Пуск>, введите cmd >, щелкните правой кнопкой мыши Командную строку> выберите Запуск от имени администратора.


2. Теперь введите команду sfc/scannow


3. Дождитесь завершения процесса сканирования и перезагрузите компьютер. Все поврежденные файлы будут заменены при перезагрузке.

DISM - это инструмент Windows, используемый ИТ-специалистами для монтирования образа рабочего стола Windows и для изменения функций и настроек Windows. Это означает управление развертыванием образов и обслуживанием (DISM). Этот инструмент используется для исправления таких проблем, как системные несоответствия, неработоспособный образ Windows, проблемы, вызванные обновлениями или изменениями, а также такие ошибки, как ошибка DISM 87, 112, 11, 50, 2, 3, 87,1726, 1393, 0x800f081f.

Средство устранения неполадок запускает этот инструмент в командной строке, введя DISM.exe и строку операторов или переключателя.

Ошибка DISM 87 - Параметр задан неверно.

Ошибка DISM 112 - Существует не хватает места на диске.

Ошибка DISM 11 - Была предпринята попытка загрузить программу с неверным форматом.

Ошибка DISM 50 - Запрос не поддерживается.

Ошибка DISM 2 - Система не может найти указанный файл.

Ошибка DISM 3 - Система не может найти указанный путь.

Ошибка DISM 1726 – Вызов удаленной процедуры не удался.

Ошибка DISM 1393 - Структура диска повреждена и нечитаема.

Ноябрьское обновление 2021:

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

скачать

Исправление ошибки DISM

  • Запустите командную строку с повышенными правами и введите следующую команду:

dism.exe / image: C: / cleanup-image / revertpendingactions

  • Затем перезагрузите компьютер в автономном режиме и снова запустите командную строку, чтобы выполнить следующую команду:

dism.exe / online / Cleanup-Image / StartComponentCleanup

  • Перезагрузитесь в безопасном режиме и затем запустите ПФС / SCANNOW.


  • Перезагрузите систему и выполните следующую команду:

dism.exe / online / Cleanup-Image / RestoreHealth


Читайте также: