Смотрите видео ниже, чтобы узнать, как установить наш сайт в качестве веб-приложения на домашнем экране.
Примечание: Эта возможность может быть недоступна в некоторых браузерах.
Новые возможности
WinDbg теперь поставляется с отладчиками в режиме консоли (cdb.exe/ ntsd64.exe / kd.exe)! Чтобы различать двоичные файлы друг от друга и не мешать существующим копиям инструментов, двоичные файлы включают имя архитектуры:
Дополнительные возможности:
- cdbARM64.exe / cdbX64.exe / cdbX86.exe
- kdARM64.exe / kdX64.exe / kdX86.exe
- ntsdARM64.exe / ntsdX64.exe / ntsdX86.exe
- Заголовок окна инструментов модели данных можно настроить с помощью команды $OpenDmoToolwindow, а также изменить его с помощью контекстного меню заголовка.
- Новый параметр отладчика позволяет включить параллельное скачивание символов через HTTP. Этот параметр включен по умолчанию.
Исправления ошибок
- Исправлен способ сохранения целевого пути для файлов дампа, открытых с помощью командной строки (-z) для успешного открытия из меню "Последние".
- Исправлен сбой в окне редактора скриптов.
- Исправлено, как WinDbg обрабатывает несогласованные окончания строк в исходных файлах, открытых в окне источника, чтобы обеспечить более согласованное представление исходных файлов.
- Исправлена проблема, из-за которой учетные данные не обновлялись для серверов символов HTTP при использовании новой функции параллельного скачивания.
- Исправлена проблема, из-за которой свойства объектов модели данных не перечислялись должным образом в расширениях JavaScript.
- Исправлена проблема, из-за которой текст столбца исчез при переупорядочении с помощью щелчка и перетаскивания.
- Исправлена проблема, из-за которой настройка фильтрации событий с помощью параметров командной строки не применялась к целевому объекту отладки при запуске.
- Исправлена проблема, из-за которой иногда при откреплении окна инструментов появлялось пустое окно.
- Исправлена проблема, из-за которой не удалось выполнить отладку мини-модулей эмулированных процессов X64 на компьютерах ARM64.
- Исправлена проблема, из-за которой неоднозначные точки останова вызывали сбой в отладчике.
- Исправлена проблема, из-за которой GDBServer произошел сбой при завершении процесса при отладке динамического процесса Linux.
- Исправлено несколько проблем, связанных с отладкой расширений JavaScript (.scriptdebug), включая лучшее перечисление свойств и исправление проблемы с сбоем.
Общие улучшения пользовательского интерфейса
- Всплывающее окно предложения команды выравнивается с курсором и отображает только предлагаемые завершения, а не все перед курсором.
- Диалоговое окно запуска целевой ошибки отладки содержит дополнительные сведения, а для открытых сбоев дампа предоставляет гиперссылку на не удалось открыть TSG-файл дампа.
- Заголовки инструментальных окон имеют то же контекстное меню, что и закрепленная вкладка.
- Визуальные улучшения в окнах "Локальные", "Контрольные" и "Модели".
- Отладка временных путешествий (TTD) обновлена до версии 1.11.532. Дополнительные сведения см . в заметках о выпуске TTD.
IntelliSense в командном окне
При вводе команды автодополнение будет автоматически отображаться, если первый символ — это точка (.), восклицательный знак (!) или доллар ($). Также подсказки можно вызвать сочетанием клавиш Ctrl + Пробел.
Отладка с использованием моментальных снимков (Snapshot debugging)
Во время локальной отладки работающих процессов отладчик может делать "снимки" состояния процесса и переключаться между снимками и живым процессом с помощью иконок на вкладке "Extensions". Также можно подключиться к моментальному снимку процесса без его приостановки, используя строку протокола snapshotid=<pid процесса в hex> в окне "Подключиться к удалённому отладчику".
Новые API модели данных
- Debugger.Utility.Symbols.GetTypeInformation
Возвращает информацию о типе переданного объекта. Поддерживается необязательный аргумент для автоматического разыменования указателей (на один уровень), если нужно получить тип объекта, на который указывает указатель или ссылка.- Debugger.Utility.Control.CreateStepFilter
Создаёт новый фильтр пошагового выполнения. API находится в том же пространстве имён, что и функции создания точек останова.- Debugger.State.StepFilters
Возвращает список фильтров пошагового выполнения с такими свойствами, как Id, Description, Type, Pattern и IsEnabled. У каждого фильтра есть метод .Remove().
Улучшенная отладка CLR без clrcomposition.dll
Теперь redistributable-компонент dbgeng.dll поддерживает трассировку стека CLR-кадров без необходимости наличия clrcomposition.dll.
Прочие улучшения
- Улучшена поддержка отладки ядра Linux (особенно для ядер версии 6.11 и выше)
- Поддержка ZSTD-сжатых KDUMP-страниц
Исправления ошибок
- Обновлён SOS до версии 9.0.557512
- Исправлена проблема производительности при проверке отозванных подписей при загрузке msdia140.dll
- Исправлен сбой при чтении контекста XSTATE
- Исправлена подсветка отключённых точек останова в окне дизассемблирования, теперь они отличаются от включённых
- Исправлен сбой при закрытии плавающего окна инструмента
- Исправлена проблема, из-за которой окно Timelines не отображало текущую позицию при открытии недавнего трассирования
- Исправлена проблема, из-за которой окна Disassembly и Memory не обновлялись после ввода нового значения
- Исправлена цветовая схема заголовка окон в тёмной теме
- Улучшено отображение отложенных точек останова в окне Breakpoints — теперь Location не показывает 0x0, а отображает исходное выражение. Также добавлен особый значок, указывающий, что точка не привязана
- Исправлена проблема в окнах Locals/Watch — правый клик по элементу вызывал прокрутку вверх
- Исправлены ошибки в natvis (см. оригинальный отчёт об ошибке)
- Устранён спам отладчика kd с сообщением Error getting port connector information (см. оригинальный отчёт об ошибке)
- Исправлена проблема с условными точками останова, срабатывавшими от сборщика мусора даже при ложном условии
- Теперь можно просматривать регистры YMM и ZMM при отладке трассировки TTD
Улучшения доступности
- Улучшена навигация по клавиатуре в окнах Locals, Watch и Breakpoints
- Улучшена визуальная читаемость ленты и указанных окон
- Улучшена поддержка экранных дикторов в этих окнах
- При редактировании в окнах Locals, Watch и Breakpoints сохраняется предыдущий фокус, выделение и прокрутка (если возможно)
- Улучшена общая поддержка масштабирования текста в Windows
Общие улучшения интерфейса
- Добавлена команда переключения фокуса между вводом команды и выводом результата, аналогичная Toggle Mark Mode в командной строке. Сочетание клавиш — Ctrl + M
- В окно Breakpoints добавлен пункт контекстного меню "Перейти к дизассемблированию"
- В окно Disassembly добавлено контекстное меню с пунктами: "Выполнить до инструкции", "Установить указатель инструкции", "Перейти к исходному коду", "Переключить точку останова", "Включить/выключить точку останова"
Time Travel Debugging (TTD)
Обновлено до версии 1.11.481
См. [примечания к выпуску TTD] (TTD Release Notes).
1.2402.24001.0
Новые возможности
Отладка Live Linux
Теперь вы можете выполнять прямую отладку процесса Linux. Дополнительные сведения см. в следующих статьях:
Отладка удаленного процесса Linux
Символы и источники Linux
Клиент WinDbg в обозримом будущем по-прежнему потребует Windows, так как WinDbg не работает в Linux.
Запись подмножества выполнения с помощью отладки времени перемещения
Теперь можно указать список модулей для записи, чтобы сосредоточиться на TTD на модулях, которые вам нужны. Это может значительно снизить затраты на запись. Чтобы использовать это просто проверка "Запись подмножества выполнения" в диалоговом окне "Настройка и запись", а затем укажите модули, которые требуется записать. (см . известные проблемы ниже).
Для более точного управления можно точно записать программу с помощью нового API записи в процессе. Узнайте, как с помощью примера кода и документации.
Окно компактных регистров
Новое окно регистрации выглядит так же, как выходные данные команды r . Обратите внимание, что редактирование из нового окна регистрации еще не поддерживается.
Новые параметры для e (ввод значений) в команды памяти
Команды e (ввод значений) в память теперь поддерживают физические адреса так же, как d команды (отображаемая память). Обратите внимание, что эти параметры поддерживаются только в режиме ядра:
Развернуть таблицу
Дополнительные сведения см. в разделе e, ea, eb, ed, eD, ef, ep, eq, eu, ew, eza (ВВОД значений).
Вариант Описание /p Использует адреса физической памяти для отображения. Диапазон, указанный диапазоном, будет взят из физической памяти, а не виртуальной памяти. /p[c] Аналогично тому, что /pкэшированная память будет считываться. Квадратные скобки вокруг c должны быть включены. /p[uc] То же самое /p, что, за исключением того, что некэшированная память будет считываться. Квадратные скобки вокруг uc должны быть включены. /p[wc] Так же, как /pи в случае с памятью, объединенной записью, будет считываться. Квадратные скобки вокруг wc должны быть включены.
Исправления ошибок
- Поддержка дедемангинга имени Rust в отладке Linux
- Улучшения отладки СРЕДЫ CLR
- Добавление возможности принудительной принудительной передачи кадров среды CLR в смешанном режиме
- Добавлен параметр ForceMixedModeStackWalker , добавленный config.xml или DbgX.xml.
- Добавлена !forceclrmixedmodeunwind команда для одноуровневых расследований или если вы не можете изменить параметр конфигурации.
- Общие улучшения отладки СРЕДЫ CLR в Linux
- Устранение ряда проблем, связанных с LinuxKernel.js и переменными на ЦП
- Добавлена !runq команда для LinuxKernel.js, чтобы иметь возможность дампа очередей запуска планировщика ядра на ЦП (аналогичной команде служебной программы аварийного runq завершения Linux).
- Исправлены различные команды в LinuxKernel.js для соответствия изменениям ядра: в более поздних ядрах дерево таймера использует кэшированные узлы RB вместо необработанных узлов RB; в более поздних ядрах список all_bdevs исчез, поэтому блоковые устройства теперь переходят из суперблока (blockdev_superblock)
- Различные исправления natvis для работы более поздних версий Visual Studio
- Предпочитать sourcelink и устаревшую sourceinfo
- Добавлена !lmsourcesinfo <module> команда для отображения потоков исходной связи из PDB (чтобы помочь в отладке проблем с sourcelink).