Запуск анализатора сбоев на компьютере конечного пользователя. Отладчик виндовс 10


Установка Debugging Tools for Windows

Debugging Tools for Windows - Инструменты отладки кода операционных систем Windows. Представляют собой набор свободно распространяемых программ от Microsoft, предназначенных для отладки кода пользовательского режима и режима ядра: приложений, драйверов, служб, модулей ядра. В состав инструментария входят отладчики консольного и GUI- режимов, утилиты для работы с символами, файлами, процессами, утилиты для обеспечения удаленной отладки. Инструментарий содержит в себе утилиты, с помощью которых можно находить причины сбоев в различных компонентах системы. Debugging Tools for Windows с определенного момента недоступны для скачивания в форме автономного дистрибутива и входят в состав Windows SDK (Windows Software Development Kit). Набор инструментальных средств Windows SDK, в свою очередь, доступен в виде части программы подписки MSDN или же может быть свободно загружен в качестве отдельного дистрибутива с сайта msdn.microsoft.com. По заявлению разработчиков, последняя и самая актуальная версия Debugging Tools for Windows содержится именно в Windows SDK.

Debugging Tools for Windows обновляются и выкладываются в публичный доступ достаточно часто и процесс этот никак не зависит от выпуска операционных систем. Поэтому, периодически проверяйте наличие новых версий.

Давайте теперь посмотрим, что же, в частности, позволяют нам средства Debugging Tools for Microsoft Windows:

  • Отлаживать локальные приложения, службы (сервисы), драйвера и ядро;
  • Отлаживать по сети удаленные приложения, службы (сервисы), драйвера и ядро;
  • Отлаживать работающие приложения в режиме реального времени;
  • Анализировать файлы дампов памяти приложений, ядра и системы в целом;
  • Работать с системами на базе архитектур x86/x64/Itanium;
  • Отлаживать программы пользовательского режима и режима ядра;

Доступны следующие версии Debugging Tools for Windows: 32-bit x86, Intel Itanium, 64-bit x64. Нам потребуются две из них: x86 либо x64.

Доступны несколько способов установки Debugging Tools for Windows, в данной же статье мы будем рассматривать лишь основные из них:

  • Установка посредством web-инсталлятора.
  • Установка Debugging Tools for Windows с ISO-образа Windows SDK.
  • Установка Debugging Tools for Windows непосредственно из пакетов dbg_amd64.msi/dbg_x86.msi.

Остается неясен еще во какой момент, зачем мне инсталлировать отладочный инструментарий на компьютер? Зачастую ведь сталкиваешься с ситуацией, когда вмешательство в рабочую среду крайне нежелательно! И уж тем более что инсталляция нового продукта, то есть внесение изменений в реестр/файлы системы, может быть совершенно недопустима. Примерами могут служить критически-важные сервера. Почему бы разработчикам не продумать вариант с портабельными (portable) версиями приложений, не требующих установки?От версии к версии процесс установки пакета Debugging Tools for Windows претерпевает некоторые изменения. Давайте теперь перейдем непосредственно к процессу установки и рассмотрим способы, которыми можно установить инструментарий.

Установка Debugging Tools for Windows при помощи web-инсталлятора

Переходим на страницу Скачиваемые файлы WDK и WinDbg и в нижней части страницы находим раздел под названием "Автономные средства отладки для Windows (WinDbg)" и ниже пункт "Получить автономные средства отладки (WinDbg) как часть пакета Windows 8.1 SDK".

Debugging tools веб инсталлятор

После щелчка скачиваем и запускаем файл sdksetup.exe, который и стартует процесс онлайн-установки Windows SDK. На начальном этапе инсталлятор проверит наличие в системе установленного пакета .NET Framework последней версии (в данный момент это 4.5). Если пакет отсутствует, что будет предложена установка и по окончании выполнена перезагрузка станции. Сразу после перезагрузки, на этапе авторизации пользователя, стартует процесс инсталляции уже непосредственно Windows SDK.

Windows SDK web инсталлятор

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

После завершения инсталляции Debugging Tools for Windows расположение файлов отладки при данном методе инсталляции у нас будет следующим:

  • 64-битные версии: C:\Program Files (x86)\Windows Kits\x.x\Debuggers\x64
  • 32-битные версии: C:\Program Files (x86)\Windows Kits\x.x\Debuggers\x86

* где x.x - определенная версия комплекта разработки;Заметили, что версии 8 и выше, пути инсталляции заметно отличаются от классических для всех предыдущих версий средств отладки?

Огромным плюсом данного способа установки Debigging Tools for Windows является установка версий отладочных средств сразу всех архитектур.

Установка Debugging Tools for Windows с ISO-образа Windows SDK

Данный метод подразумевает установку Debugging Tools for Windows с использованием полного инсталляционного образа Windows SDK (Software Developers Kit). До определенного времени, скачать образ ISO для соответствующей системы можно было на странице Архив Windows SDK. Однако, в данный момент, получить ISO-образ SDK можно через запуск web-инсталлятора sdksetup.exe, и выбора пункта Download the Windows Software Development Kit в стартовом окне инсталлятора:

windows-sdk-iso-download

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

Соответственно, на странице необходимо подобрать требуемый дистрибутив, для меня (да и думаю для многих) в данный момент это "Пакет Windows SDK для Windows 7 и .NET Framework 4" и чуть ниже нажать на ссылку "Получить ISO-образ DVD-диска".

При работе с сайтом msdn.microsoft.com советую воспользоваться браузером Internet Explorer, поскольку были замечены случаи неработоспособности конкурирующих продуктов!

Далее у нас имеется выбор между тремя вариантами образа:

Имя Назначение
GRMSDK_EN_DVD.iso Образ SDK для систем с архитектурой x86 (32-битных).
GRMSDKIAI_EN_DVD.iso Образ SDK для систем с архитектурой ia64.
GRMSDKX_EN_DVD.iso Образ SDK для систем с архитектурой x64 (64-битных).

Соответственно, необходимо выбрать исключительно по необходимости. Обычно разрядность Debugging Tools for Windows совпадает с разрядностью системы. У меня исследуемые системы, в основном, 64-битные, поэтому я в большинстве случаев скачиваю образ для 64-битной системы GRMSDKX_EN_DVD.iso.Затем, после скачивания образа, нам необходимо с имеющимся ISO-образом как-то работать. Традиционным способом является, конечно же, запись компакт-диска, но ведь это достаточно долгий и иногда затратный метод. Предлагаю воспользоваться бесплатными утилитами по созданию в системе виртуальных дисковых устройств. Лично я для этой цели предпочитаю пользоваться программой DEAMON Tools Lite. У кого-то могут быть и другие предпочтения, более прямые или легковесные утилиты, на вкус и цвет, как говорится.. После инсталляции DAEMON Tools Lite, я просто щелкаю два раза на файл образа GRMSDKX_EN_DVD.iso и в системе у меня появляется новый виртуальный компакт диск:

Монтирование Windows SDK ISO

Уже затем двойным щелчком активирую автозагрузку и запускаю инсталляцию Windows SDK:

Процесс инсталляции Windows SDK

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

Выбор опции Debugging Tools for Windows

Все именно так, на скриншоте отмечено две опции: "Windows Performance Toolkit" и "Debugging Tools for Windows". Выбирайте обе, потому как Windows Performance Toolkit Вам непременно пригодится в работе! Далее, после нажатия кнопки "Next" инсталляция продолжается в обычном режиме. И в конце вы увидите надпись "Installation Complete".По окончании инсталляции рабочие директории комплекта Debugging Tools for Windows будут следующими:

  • Для версии x86: C:\Program Files (x86)\Debugging Tools for Windows (x86)
  • Для версии x64: C:\Program Files\Debugging Tools for Windows (x64)

На этом установку Debugging Tools for Windows можно считать оконченной.

Установка Debugging Tools for Windows через .msi файл

В случае возникновения проблем при инсталляции Debugging Tools for Windows двумя предыдущими способами, у нас в запасе остается еще один, самый надежный и проверенный временем, выручавший, так сказать, не раз. Когда-то, до интеграции в Windows SDK, Debugging Tools for Windows были доступны в виде отдельного инсталлятора .msi, который и сейчас можно найти, однако уже в недрах дистрибутива Windows SDK. Поскольку у нас на руках имеется уже ISO-образ Windows SDK, то мы можем не монтировать его в систему, а просто открыть при помощи всем уже хорошо знакомого архиватора WinRAR, ну или любого другого продукта, работающего с содержимым ISO-дисков.

debugging tools msi

После открытия образа нам необходимо пройти в каталог "Setup", находящийся в корне и далее выбрать одну из директорий:

  • Для установки 64-битной версии: \Setup\WinSDKDebuggingTools_amd64 и распаковать из этого каталога файл dbg_amd64.msi.
  • Для установка 32-битной версии: \Setup\WinSDKDebuggingTools и распаковать из этого каталога файл dbg_x86.msi.

Далее, запускаем распакованный только что .msi файл и стартуем установку Debugging Tools for Windows.

Установка Debugging Tools с помощью msi

По окончании инсталляции рабочие директории комплекта Debugging Tools for Windows будут следующими:

  • Для версии x86: C:\Program Files (x86)\Debugging Tools for Windows (x86)
  • Для версии x64: C:\Program Files\Debugging Tools for Windows (x64)

На этом установку Debugging Tools for Windows можно считать выполненной.

Дополнительные сведения

Не знаю с чем это связано, быть может с моей невнимательностью, но после инсталляции Отладочных средств для Windows, инсталлятор не прописывает в системную переменную пути Path путь к каталогу с отладчиком. Это накладывает определенные ограничения на запуск различных отладочных задач напрямую из консоли. Поэтому, в случае отсутствия пути, я самостоятельно прописываю в окне Переменные среды путь к отладочным средствам:

  • C:\Program Files (x86)\Windows Kits\10\Debuggers\x86
  • C:\Program Files (x86)\Windows Kits\10\Debuggers\x64

* В вашем случае пути могут отличаться как по причине использования ОС другой разрядности, так и по причине использования SDK другой версии.

Утилиты пакета Debugging Tools for Windows могут работать в качестве переносных приложений, достаточно просто скопировать с рабочей системы каталог Microsoft Windows Performance Toolkit и использовать его в качестве портабельной версии на рабочем сервере. Но не забывайте учитывать разрядность системы!! Если Вы даже произвели полную инсталляцию пакета на критически-важную систему, то работать можно начинать прямо после инсталляции, перезагрузка не требуется.

Состав Debugging Tools for Windows

И теперь напоследок приведем состав Debugging Tools for Windows:

Файл Назначение
adplus.doc Документация по утилите ADPlus.
adplus.exe Консольное приложение, которое автоматизирует работу отладчика cdb для создания дампов, лог-файлов для одного или нескольких процессов.
agestore.exe Утилита для удаления устаревших файлов из хранилища, используемого сервером символов или сервером исходников.
breakin.exe Утилита, которая позволяет посылать процессам комбинацию пользовательского останова (break), аналогичное нажатию CTRL+C.
cdb.exe Консольный отладчик пользовательского режима.
convertstore.exe Утилита для конвертирования символов из уровня 2-tier в уровень 3-tier.
dbengprx.exe Рипитер (прокси сервер) для удаленной отладки.
dbgrpc.exe Утилита для отображения информации о состоянии вызова RPC.
dbgsrv.exe Процесс сервера, используемый для удаленной отладки.
dbh.exe Утилита для вывода информации о содержимом файла символов.
dumpchk.exe Утилита проверки дампа. Утилита для быстрой проверки дамп-файла.
dumpexam.exe Утилита для анализа дампа памяти. Результат выводится в %SystemRoot%\MEMORY.TXT.
gflags.exe Редактор глобальных флагов системы. Утилита управляет ключами реестра и другими настройками.
i386kd.exe Обертка к kd. Когда то так назывался kd для систем на базе Windows NT/2000 для x86 машин? Вероятно, оставлено из соображений совместимости.
ia64kd.exe Обертка к kd. Когда то так назывался kd для систем на базе Windows NT/2000 для ia64 машин? Вероятно, оставлено из соображений совместимости.
kd.exe Консольный отладчик режима ядра.
kdbgctrl.exe Инструмент управления отладки ядра. Утилита для управление и конфигурирования kernel debugging connection.
kdsrv.exe Сервер соединений для KD. Утилита представляет собой небольшое приложений, которое запускается и ждет удаленных соединений. kd запускается на клиенте и подсоединяется к этому серверу для удаленной отладки. И сервер и клиент должны быть из одной сборки Debugging Tools.
kill.exe Утилита для завершения процессов.
list.exe Утилита для вывода содержимого файла на экран. В комплекте эта миниатюрная утилита оказалась с одной целью - просмотр больших текстовых или лог-файлов. Занимает немного места в памяти, поскольку грузит текст частями.
logger.exe Миниатюрный отладчик, который может работать только с одним процессом. Утилита внедряет logexts.dll в пространство процесса, которая записывает все вызовы функций и другие действия исследуемой программы.
logviewer.exe Утилита для просмотра логов, записанных отладчиком logger.exe.
ntsd.exe Microsoft NT Symbolic Debugger (NTSD). Отладчик, идентичный cdb, за исключением того, что он создает текстовое окно при запуске. Как и cdb, ntsd способен отлаживать и консольные приложения и графические приложения.
pdbcopy.exe Утилита для удаления приватных символов из файла символов, контроля за публичными символами, включенными в файл символов.
remote.exe Утилита для удаленной отладки и удаленного контроля любого консольного отладчика KD, CDB и NTSD. Позволяет запускать все эти консольные отладчики удаленно.
rtlist.exe Удаленный просмотрщик задач. Утилита используется для вывода списка запущенных процессов через процесс сервера DbgSrv.
symchk.exe Утилита для загрузки символов с сервера символов Microsoft и создания локального кеша символов.
symstore.exe Утилита для создания сетевого или локального хранилища символов (2-tier/3-tier). Хранилище символов - специализированная директория на диске, которая строится в соответствии с определенной структурой и содержит символы. В корневой директории символов создается структура подпапок с названиями, идентичными названию компонентов. В свою очередь, в каждой из этих подпапок находятся вложенные подпапки, имеющие специальные наименования, получаемые методом хеширования бинарных файлов. Утилита symstore сканирует папки с компонентами и добавляет новые компоненты в хранилище символов, откуда их может получить любой клиент. Говорится что symstore служит для получения символов из хранилища уровня 0-tier и выкладывания их в хранилище уровня 2-tier/3-tier.
tlist.exe Просмотрщик задач. Утилита для вывода списка всех запущенных процессов.
umdh.exe User-mode dump heap utility. Утилита для анализа куч (heap) выбранного процесса. Позволяет выводить различные параметры для кучи.
usbview.exe Просмотрщик USB. Утилита для просмотра USB устройств, подключенных к компьютеру.
vmdemux.exe Демультиплексор виртуальной машины. Для одного COM-соединения создает несколько именованных каналов. Каналы используются для отладки различных компонентов виртуальной машины
windbg.exe Отладчик режима пользователя и режима ядра с графическим интерфейсом.

datadump.ru

Параметры командной строки BCDEdit - Windows 10 hardware dev

BCDEdit — это программа командной строки, предназначенная для управления данными конфигурации загрузки (BCD).

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

BCDEdit можно использовать для различных задач, включая создание новых хранилищ, изменение существующих, добавление параметров меню загрузки и т. д.

Вам потребуются права администратора для использования BCDEdit с целью изменения BCD. Запустите командную строку (от имени администратора) или используйте среду восстановления Windows.

Чтобы обеспечить сохранение на диске всех измененных параметров BCDEdit, потребуются обычное завершение работы и перезагрузка.

BCDEdit содержится в папке %WINDIR%\System32.

BCDEdit ограничивается стандартными типами данных и предназначается главным образом для внесения отдельных изменений в BCD. Связанные ресурсы:

  • Некоторые распространенные операции BCD, например, восстановление раздела или настройку нового системного раздела компьютера, можно выполнить легче с помощью BCDboot.
  • Для сложных операций или нестандартных типов данных лучше использовать программный интерфейс (API) инструментария управления Windows (WMI) BCD для создания более мощных и гибких настраиваемых средств.

Параметры командной строки BCDEdit

В средстве BCDEdit.exe доступны следующие параметры командной строки.

BCDEdit /Command[Argument1] [Argument2] ...

Справка

ПараметрОписание
/? [commmand]

Отображает список команд BCDEdit.

Чтобы отобразить подробную справку для определенной команды, выполните команду bcdedit /?command, где command — это название команды, о которой вам необходимы более подробные сведения.

 

Работа в хранилище

ПараметрОписание
/createstoreСоздает новое пустое хранилище данных конфигурации загрузки. Созданное хранилище не является системным.
/exportЭкспортирует содержимое системного хранилища в файл. Этот файл можно использовать позднее для восстановления состояния системного хранилища. Эта команда действует только для системного хранилища.
/import Восстанавливает состояние системного хранилища, используя файл резервных данных, ранее созданный путем использования параметра /export. Эта команда удаляет все существующие записи в системном хранилище, прежде чем начнется импорт. Эта команда действует только для системного хранилища.
/storeЭтот параметр можно использовать с большинством команд BCDedit для указания хранилища, которое необходимо использовать. Если этот параметр не указан, BCDEdit работает в системном хранилище. Выполнение команды /store bcdedit само по себе является эквивалентом выполнения активной команды /enum bcdedit.
/sysstoreНастраивает устройство системного хранилища. Это влияет только на системы, основанные на EFI. Этот параметр не сохраняется при перезагрузках и используется только в тех случаях, когда устройство системного хранилища неоднозначно.

 

Работа с записями в хранилище

ПараметрОписание
/copy Создает копию указанной загрузочной записи в одном системном хранилище.
/createСоздает новую запись в хранилище данных конфигурации загрузки. Если указан хорошо известный идентификатор, тогда параметры /application, /inherit и /device указать нельзя. Если идентификатор не указан или не является хорошо известным, необходимо указать параметр /application, /inherit или /device.
/deleteУдаляет элемент из указанной записи.
/mirrorСоздает зеркало записей в хранилище.

 

Изменение параметров записи

ПараметрОписание
/deletevalue Удаляет указанный элемент из загрузочной записи.
/set Устанавливает значение параметра записи.

 

Управление выводом

ПараметрОписание
/enum Создает список записей в хранилище. Параметр /enum является значением по умолчанию для BCEdit. Поэтому выполнение команды bcdedit без параметров эквивалентно выполнению активной команды /enum bcdedit.
/vРежим подробного протоколирования. Обычно, все известные идентификаторы записей представлены в удобной сокращенной форме. При указании /v в качестве параметра командной строки все идентификаторы отображаются полностью.

Выполнение команды /v bcdedit само по себе является эквивалентом выполнения активной команды /v bcdedit.

 

Управление диспетчером загрузки

ПараметрОписание
/bootsequence Указывает одноразовый порядок отображения для использования во время следующей загрузки. Эта команда похожа на параметр /displayorder, за исключением того, что она используется только при следующем запуске компьютера. После этого компьютер возвращается к исходному порядку отображения.
/default Указывает запись по умолчанию, которую выбирает диспетчер загрузки по истечении времении ожидания.
/displayorder Определяет порядок отображения, который использует диспетчер загрузки при отображении параметров загрузки для пользователя.
/timeout Определяет время ожидания (в секундах), прежде чем диспетчер загрузки выберет запись по умолчанию.
/toolsdisplayorder Определяет порядок отображения для использования диспетчером загрузки при отображении меню "Сервис".

 

Параметры служб аварийного управления

ПараметрОписание
/bootems Включает и отключает службы аварийного управления (EMS) для указанной записи.
/emsВключает и отключает службы аварийного управления для определенной загрузочной записи операционной системы.
/emssettings Задает глобальные параметры служб аварийного управления для компьютера. Параметр /emssettings не включает и не отключает службы аварийного управления любой указанной загрузочной записи.

 

Отладка

ПараметрОписание
/bootdebug Включает и отключает отладчик загрузки для конкретной загрузочной записи. Хотя эта команда работает для любой загрузочной записи, она эффективна только для программ загрузки.
/dbgsettingsОпределяет или отображает глобальные параметры отладчика для системы. Эта команда не включает и не отключает отладчик ядра; для этой цели используйте параметр /debug. Чтобы настроить отдельный глобальный параметр отладчика, используйте команду значения типа /setdbgsettings bcdedit.
/debugВключает и отключает отладчик ядра для конкретной загрузочной записи.
/hypervisorsettingsЗадает параметры низкоуровневой оболочки.

 

Чтобы устранить неполадки новой установки, включите режим отладки, изменив файл конфигурации загрузки (BCD). Например, используйте следующий синтаксис, чтобы включить отладку ядра или загрузки.

bcdedit /set <id> debug on

-или-

bcdedit /set <id> bootdebug on

где <id> — это GUID объекта загрузчика, который используется для загрузки операционной системы. "По умолчанию" можно использовать, если операционная система является параметром по умолчанию меню диспетчера загрузки.

Примеры BCDEdit см. в разделе Данные конфигурации загрузки в Windows Vista.

Удаленная регистрация событий

ПараметрОписание
/eventsettingsЗадает глобальные параметры удаленной регистрации событий.
/event Включает и отключает удаленную регистрацию событий для записи операционной системы.

 

Связанные разделы

BCDboot Параметры системного хранилища данных конфигурации загрузки для UEFI Команды BCDEdit для среды загрузки Настройка 4-Gigabyte: BCDEdit и Boot.ini Данные конфигурации загрузки в Windows Vista Редактор данных конфигурации загрузки: вопросы и ответы

 

 

msdn.microsoft.com

Практическое руководство. Отладка из проекта DLL

Эта документация перемещена в архив и не поддерживается.

Visual Studio 2015

 

Опубликовано: Апрель 2016

Самая актуальная документация по Visual Studio 2017: Документация по Visual Studio 2017.

Чтобы начать отладку проекта DLL, необходимо указать вызывающее приложение в свойствах проекта. Страницы свойств C++ отличаются по структуре и содержимому от страниц свойств C# и Visual Basic.

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

System_CAPS_ICON_note.jpg Примечание

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

Чтобы задать вызывающее приложение в проекте C++

  1. Щелкните правой кнопкой мыши узел проекта в обозревателе решений и выберите Свойства. Откройте вкладку Отладка.

  2. Убедитесь, что в поле Настройка в верхней части окна задано значение Отладка.

  3. Последовательно выберите Свойства конфигурации / Отладка.

  4. В списке Загружаемый отладчик выберите Локальный отладчик Windows или Удаленный отладчик Windows.

  5. В поле Команда или Удаленная команда добавьте полное имя пути приложения.

  6. Добавьте необходимые аргументы программы в поле Аргументы команды.

Чтобы задать вызывающее приложение в проекте C# или Visual Basic

  1. Щелкните правой кнопкой мыши узел проекта в обозревателе решений и выберите Свойства. Откройте вкладку Отладка.

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

    Если вам нужно добавить аргументы командной строки внешней программы, укажите их в поле Аргументы командной строки.

  2. Вы можете также вызвать приложение как URL-адрес. (Это может понадобиться при отладке управляемой библиотеки DLL, используемой локальным приложением ASP.NET.)

    В меню Действие при запуске щелкните переключатель Открыть URL-адрес в браузере: и укажите URL-адрес.

Чтобы запустить отладку из проекта DLL

  1. Установите точки останова надлежащим образом.

  2. Начните отладку (нажмите клавишу F5, щелкните зеленую стрелку или последовательно выберите Отладка / Начать отладку).

Отладка проектов DLLПараметры проекта для конфигураций отладки C#Параметры проекта для конфигурации отладки Visual BasicПараметры проекта для конфигурации отладки C++

msdn.microsoft.com

Параметры командной строки программы установки Windows

В программе установки Windows доступны следующие параметры командной строки:

setup.exe [/1394debug:<channel> [baudrate:<baudrate>]]

[/addbootmgrlast]

[/Auto {Clean | DataOnly | Upgrade}]

[/busparams:<bus.device.function>]

[/CompactOS {Enable | Disable}]

[/Compat {IgnoreWarning | ScanOnly}]

[/CopyLogs<location>]

[/debug:<channel> [baudrate:<baudrate>]]

[/DynamicUpdate {enable | disable}]

[/emsport: {COM1 | COM2 | usebiossettings | off} [/emsbaudrate:<baudrate>]]

[/InstallDrivers<location>]

[/installfrom <path>]

[/InstallLangPacks<location>]

[/m:<folder_name>] [/noreboot] [/tempdrive:<drive_letter>]

[/MigrateDrivers {all | none}]

[/netdebug:hostip=<w.x.y.z>,port=<n>,key=<q.r.s.t>[,nodhcp][,busparams=n.o.p]]

[/NoReboot]

[/PKey <product key>]

[/PostOOBE<location>[\setupcomplete.exe]]

[/PostRollback<location>[\setuprollback.exe]]

[/Quiet ]

[/ResizeRecoveryPartition {Enable | Disable}]

[/ShowOOBE {full | none}]

[/Telemetry {Enable | Disable}]

[/TempDrive:<drive_letter>]

[/unattend:<answer_file>]

[/Uninstall {enable | disable}]

[/usbdebug:<hostname>]

[/wdsdiscover]

[/wdsserver:<servername>]

Параметры командной строки программы установки

В следующей таблице перечислены параметры командной строки программы установки.

OptionDescription

/1394Debug:<channel> [BaudRate:<baudrate>]

Включает отладку ядра через порт IEEE 1394 (FireWire) при работе Windows, а также во время этапа настройки windowsPE при установке Windows.

Параметр <channel> определяет канал отладки. Значение по умолчанию для <channel> — 1.

[baudrate:<baudrate>] указывает скорость передачи данных в бодах Windows во время отладки. Значение по умолчанию: 19200. Для параметра <baudrate> вы можете также установить значение 57600 или 115200. Например, так:

Setup /1394debug:1 /baudrate:115200

/AddBootMgrLast

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

/Auto {Clean | DataOnly | Upgrade}

Выполняет автоматическое обновление до Windows 10 или Windows 8.1 только для выпусков корпоративного лицензирования.

Если задан параметр /auto, использовать файл автоматической установки невозможно.

Если задан параметр /auto, то программа установки Windows обрабатывает файл ei.cfg и проверяет проблемы совместимости перед началом установки. Если файл ei.cfg имеет неправильный формат, то программа установки записывает код выхода и завершает работу, не выводя сообщений.

Clean: выполняет чистую установку Windows.

DataOnly: выполняет обновление Windows, сохраняя только данные (не сохраняя приложения). Если вариант установки с сохранением только данных недоступен после проверки совместимости, то программа установки Windows записывает код выхода в журнал и завершает работу, не выводя сообщений.

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

Коды выхода Setup.exe:

Имя кода выходаКод выходаПричина

CONX_SETUP_EXITCODE_CONTINUE_REBOOT0x3Обновление выполнено успешно.

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

CONX_SETUP_EXITCODE_AUTO_INSTALL_FAIL0x7Вариант установки (обновление или сохранение только данных) недоступен.

 

Понятное

/noautoexit: не используется в Windows 10. В Windows 8.1, если обнаружена ошибка, программа установки Windows не завершает работу, а останавливается на экране установки, пока пользователь не устранит проблему. После этого установка выполняется с участием пользователя.

/performDU: не используется в Windows 10. В Windows 8.1 программа установки Windows проверяет наличие динамических обновлений для программы установки Windows.

Примеры:

Setup /auto clean Setup /auto dataonly Setup /auto upgrade

/BusParams:<bus.device.function>

Задает PCI-адрес порта отладки 1394, USB или NET. Шина, устройство и функция должны задаваться десятичными числами. Пример:

Дополнительные сведения см. в разделе Настройка отладки ядра с USB 2.0.

/CompactOS {Enable | Disable}

Указывает, следует ли использовать компонент Compact OS для экономии места на жестком диске. По умолчанию программа установки Windows определяет, следует ли автоматически использовать этот компонент.

Enable: программа установки устанавливает Windows, используя сжатые системные файлы.

Disable: программа установки устанавливает Windows, используя несжатые системные файлы

Подробнее о Compact OS см. в статье Compact OS, единый источник и оптимизация образа.

/Compat {IgnoreWarning | ScanOnly}

IgnoreWarning: программа установки выполнит установку, игнорируя все исчезающие сообщения совместимости

ScanOnly: программа установки Windows запускается с помощью проверки совместимости, а затем ее работа завершается (без выполнения установки) по коду выхода для указания на существующие проблемы совместимости Windows. Программа установки вернет код 0xC1900210, если проблемы не найдены. Программа установки вернет код 0xC1900208, если обнаружены проблемы совместимости.

Пример.

Setup /compat /IgnoreWarning

Если запустить программу установки с помощью /Compat ScanOnly:

  • если проблемы совместимости обнаружены не будут, будет возвращено значение MOSETUP_E_COMPAT_SCANONLY (0xC1900210)
  • если будут обнаружены активные проблемы совместимости, например для приложений, будет возвращено значение MOSETUP_E_COMPAT_INSTALLREQ_BLOCK (0xC1900208)
  • если выяснится, что выбранный Mig-Choice недоступен, будет возвращено значение MOSETUP_E_COMPAT_MIGCHOICE_BLOCK (0xC1900204)
  • если выяснится, что компьютер не подходит для Windows 10, будет возвращено значение MOSETUP_E_COMPAT_SYSREQ_BLOCK (0xC1900200)
  • если выяснится, что на компьютере недостаточно свободного пространства для выполнения установки, будет возвращено значение MOSETUP_E_INSTALLDISKSPACE_BLOCK (0xC190020E)

Эта команда работает с другими переключениями. Например, чтобы запустить программу установки в фоновом режиме без пользовательского интерфейса:

Setup /Auto Upgrade /Quiet /Compat ScanOnly

Чтобы пропустить общие заявления об отказе в пользовательском интерфейсе, например, изменения языка:

Setup /Auto Upgrade /Quiet /Compat ScanOnly /Compat IgnoreWarning

Нередко администратору необходимо проверить XML-файл совместимости, если программа установки обнаружит проблемы совместимости. Для этого администратор может использовать флаг копирования журналов для сбора журналов установки:

Setup /Auto Upgrade /Quiet /Compat ScanOnly /Compat IgnoreWarning /CopyLogs <folder_path>

Это новый параметр в Windows 10.

/CopyLogs<location>

Программа установки скопирует или загрузит журналы (сжатые) в случае сбоя в указанное расположение (предполагая, что компьютер или пользователь имеет право и возможность доступа к сетевому расположению).

Допустимые параметры: пути к локальным файлам и сетевые пути UNC.

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

 

Пример.

Setup /copylogs \\server\share\

Это новый параметр в Windows 10.

/Debug:<port> [BaudRate:<baudrate>]

Включает отладку ядра через последовательный COM-порт во время работы Windows, а также во время этапа настройки windowsPE при установке Windows.

Параметр <port> определяет порт отладки. Значение по умолчанию для <port> — 1.

[baudrate:<baudrate> specifies the baud to use when Windows transfers data during debugging. Значение по умолчанию: 19200. Для параметра <baudrate> вы можете также установить значение 57600 или 115200. Например, так:

msdn.microsoft.com

отладка невозможна, поскольку в системе включен отладчик ядра

Эта документация перемещена в архив и не поддерживается.

Visual Studio 2015

 

Самая актуальная документация по Visual Studio 2017: Документация по Visual Studio 2017.

При отладке управляемого кода может появиться следующее сообщение об ошибке:

Debugging isn't possible because a kernel debugger is enabled on the system

Это сообщение появляется при попытке произвести отладку управляемого кода:

  • в системе Windows 7 или Windows Vista, которая была запущена в режиме отладки;

  • для приложения, использующего среду CLR версии CLR 2.0, 3.0 или 3.5.

Для устранения этой проблемы:
  • Обновите приложение, чтобы использовалась среда CLR версии 4.0 или 4.5.

    —или—

  • Отключите отладку на уровне ядра и выполняйте отладку в Visual Studio.

    —или—

  • Выполняйте отладку с использованием отладчика ядра вместо отладки в Visual Studio.

    —или—

  • В отладчике ядра отключите исключения режима пользователя.

Отключение отладки на уровне ядра в текущем сеансе
Отключение отладки на уровне ядра для всех сеансов (Windows Vista и Windows 7)
  1. В командной строке введите:

  2. Перезагрузите компьютер.

Отключение отладки на уровне ядра для всех сеансов (другие операционные системы Windows)
  1. Найдите файл boot.ini на системном диске (обычно C:\). Файл boot.ini может быть скрыт и иметь атрибут "только для чтения". Поэтому для его отображения необходимо использовать следующую команду:

  2. Откройте файл boot.ini с помощью программы "Блокнот" и удалите следующие параметры:

    /debug /debugport /baudrate
  3. Перезагрузите компьютер.

Выполнение отладки с помощью отладчика ядра
  1. Если отладчик ядра подключен, появится сообщение с запросом, нужно ли продолжать отладку. Нажмите кнопку, чтобы продолжить.

  2. Может появиться User break exception(Int 3). Если это произойдет, введите следующую команду отладчика ядра для продолжения отладки:

    gn

Безопасность отладчикаОтладка управляемого кода

msdn.microsoft.com

Обзор комплектов и средств - Windows 10 hardware dev

Эти наборы и средства доступны для использования с классическими выпусками Windows 10 (Домашняя, Pro, Корпоративная и для образовательных учреждений) и Windows 10 Mobile для разработки и производства.

Узнайте об известных проблемах и решениях для этого выпуска на наших форумах WinHEC.

Microsoft Visual Studio 2015

Установка Visual Studio 2015

Сначала скачайте инструменты Visual Studio 2015 и Microsoft Visual Studio для Windows 10. При совместном использовании Microsoft Visual Studio, Инструментов Visual Studio для Windows 10, отдельного пакета средств разработки программного обеспечения для Windows 10 и комплекта разработки драйверов (WDK) для Windows 10 обеспечивается интегрированная среда разработки для создания эффективных высококачественных драйверов для устройств под управлением Windows 10.

Отдельный пакет Windows SDK для Windows 10

Установка отдельного пакета Windows SDK для Windows 10

Пакет Windows SDK для Windows 10 содержит заголовки, библиотеки и инструменты, которые можно использовать при создании приложений, работающих в операционных системах Windows. Для написания приложений для Windows 10 для классических выпусков и Windows 10 Mobile можно использовать пакет Windows SDK для Windows 10, а также выбранную среду разработки.

WDK 10

Установить комплект разработки драйверов для Windows (WDK) 10

Загрузить шаблоны универсального драйвера Windows

WDK 10 содержит средства для сборки, тестирования, отладки и развертывания драйверов для Windows 10. WDK 10 унифицирует поддержку мобильных и настольных устройств, универсальных драйверов Windows и с помощью Visual Studio предоставляет унифицированные возможности тестирования благодаря надежной подготовке к развертыванию и отладке, которые включают в себя WinDbg. В этой среде вы можете выполнить множество основных сертификационных тестов. WDK 10 содержит шаблоны для нескольких технологий и моделей драйверов, таких как платформа драйверов Windows (WDF), USB, фильтры печати, сети и файловой системы. WDK 10 также поддерживает разработку драйвер для Windows 7, Windows 8 и Windows 8.1.

Дополнительные сведения о разработке драйверов для Windows 10 см. в разделах Новые возможности разработки универсальных драйверов для Windows и Новые возможности комплектов и средств.

Пакет Enterprise WDK (EWDK)

Пакет Enterprise WDK (EWDK) — это комплект, который позволяет крупным организациям избежать отдельной загрузки и установки пакетов SDK и WDK на каждом компьютере. Пакет EWDK имеет запускаемую из командной строки среду сборки на основе файлов. Среда не зависит от компьютера, поэтому после создания структуры файлов ее можно распространять для прямого использования, например, с помощью программного обеспечения для контроля версий или путем архивации содержимого и его распаковки на других компьютерах. Среда содержит необходимые компоненты для сборки драйверов Windows Driver Model (WDM), драйверов WDF и классических тестовых приложений для Windows.

Символы Windows

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

Комплект проектирования оборудования для Windows (HLK) для Windows 10

Скачать HLK для Windows 10

Комплект HLK для Windows 10 — это многоцелевой комплект тестирования и измерения, который поможет определить, насколько хорошо ваше оборудование взаимодействует с Windows. Пакет HLK предоставляет инфраструктуру для тестирования компьютеров. Подробнее об использовании пакета HLK с Windows 10 см. в разделе Руководство пользователя по комплекту разработки оборудования для Windows.

Дополнительное содержимое для тестов HLK

Для некоторых тестов, например тестов графики и мультимедийных файлов, требуются дополнительные файлы для тестирования. Это содержимое опубликовано в разделе Дополнительное содержимое для тестов носителей Windows HLK на странице Скачать комплекты и средства для Windows 10.

ADK для Windows 10

Загрузить ADK для Windows 10

Загрузите комплект средств для развертывания и оценки Windows (ADK), чтобы установить средства и документацию для изготовителей оборудования (OEM и ODM) для настройки образов Windows 10, оценки качества и производительности систем или компонентов, а также развертывания операционных систем Windows на новых компьютерах. Пакет Windows ADK содержит Конструктор образов и конфигураций Windows (ICD), Набор средств оценки Windows, Набор средств для оценки производительности Windows и несколько новых и улучшенных средств развертывания, которые помогут автоматизировать крупномасштабное развертывание Windows 10. Дополнительные сведения см. в разделе Новые возможности комплектов и средств.

 

 

msdn.microsoft.com

Запуск анализатора сбоев на компьютере конечного пользователя

Эта документация перемещена в архив и не поддерживается.

Обновлено: Ноябрь 2012 г.

Назначение: Diagnostics and Recovery Toolset 7.0

Как правило, анализатор сбоев Набор средств диагностики и восстановления (DaRT) 7 (Майкрософт) запускается в окне "Diagnostics and Recovery Toolset" на компьютере пользователя, на котором возникли проблемы. Анализатор сбоев предпринимает попытку найти средства отладки для Windows на компьютере с неполадкой. Если диалоговое окно пути к каталогу пустое, необходимо указать местоположение или выбрать папку установки средств отладки для Windows вручную (файлы можно загрузить с веб-узла Майкрософт). Необходимо также указать путь, где находятся файлы символов.

Открытие и запуск анализатора сбоев на компьютере конечного пользователя

  1. В окне Diagnostics and Recovery Toolset на компьютере пользователя выберите пункт Анализатор сбоев.

  2. Заполните следующие обязательные поля:

    • Средства отладки Microsoft для Windows.
    • Файлы символов.

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

    • Файл аварийного дампа

      Чтобы определить расположение файла аварийного дампа, выполните описанные ниже действия.

      1. Откройте окно Свойства системы.

        Нажмите кнопку Пуск, введите sysdm.cpl и нажмите клавишу ВВОД.

      2. Перейдите на вкладку Дополнительно.
      3. Нажмите кнопку Параметры в группе Загрузка и восстановление.
      noteПримечание
      При отсутствии доступа к окну Свойства системы можно выполнить поиск файлов дампа на компьютере пользователя с помощью средства Поиск приложения DaRT.
  3. В анализаторе сбоев будет выполнено сканирование файла аварийного дампа и выведены сведения о возможной причине сбоя. Можно просмотреть дополнительные сведения о сбое, такие как сообщение о сбое и его описание, список драйверов, загруженных на момент сбоя, и результаты полного анализа.

  4. Выберите подходящую стратегию решения проблемы. Возможно, необходимо будет отключить или обновить драйвер устройства, из-за которого возник сбой. Для этого в приложении DaRT используется узел Службы и драйверы средства Управление компьютером.

См. также

-----

Дополнительные сведения о MDOP см. в

библиотеке TechNet

, сведения об устранении неполадок — на

вики-сайте TechNet

или присоединяйтесь к нам в

Facebook

или

Twitter

.

-----

technet.microsoft.com