библиотека расширенных функций Visual Studio аддресссанитизер (вкасан)

VCAsan*.libБиблиотеки реализуют расширенные функции интегрированной среды разработки отладчика в Visual Studio. Эти функции позволяют интегрированной среде разработки отображать ошибки Аддресссанитизер в сеансах отладки в режиме реального времени или вне сети путем сохранения файла аварийного дампа с метаданными. библиотека связывается, когда аддресссанитизер включается компилятором MSVC.

Инвентаризация библиотеки Вкасан

Параметр среды выполнения Библиотека ссылок Вкасан
/MT libvcasan.lib
/MD vcasan.lib
/MTd libvcasand.lib
/MDd vcasand.lib

Функции библиотеки Вкасан

расширенное окно отчета об ошибках аддресссанитизер в интегрированной среде разработки Visual Studio

Библиотека Вкасан регистрирует обратный вызов в среде выполнения Аддресссанитизер с помощью функции __asan_set_error_report_callback Interface. Если создается отчет Аддресссанитизер, этот обратный вызов используется для создания исключения, перехваченного Visual Studio. Visual Studio использует данные исключения для создания сообщения, которое отображается для пользователя в интегрированной среде разработки.

Примечание

Библиотека Вкасан регистрирует функцию обратного вызова в среде выполнения Аддресссанитизер. Если ваш код вызывает эту функцию регистрации во второй раз, он перезаписывает регистрацию обратного вызова библиотеки Вкасан. это приводит к утрате всех Visual Studio интеграции интегрированной среды разработки. Вернитесь к интерфейсу пользователя IDE по умолчанию. Также возможно, что вызов пользователя, который регистрирует свой обратный вызов, будет потерян. Если возникает какая-либо проблема, зарегистрируйте ошибку.

Сохранять ошибки Аддресссанитизер в новом типе файла аварийного дампа

При связывании библиотеки Вкасан с исполняемым файлом пользователи могут включить ее для создания аварийного дампа во время выполнения. Затем среда выполнения Аддресссанитизер создает файл дампа при возникновении ошибки диагностики. Чтобы включить эту функцию, пользователь задает ASAN_SAVE_DUMPS переменную среды с помощью следующей команды:

set ASAN_SAVE_DUMPS=MyFileName.dmp

файл должен иметь суффикс. dmp для соблюдения соглашений Visual Studio IDE.

Вот что происходит при указании файла дампа для ASAN_SAVE_DUMPS : Если ошибка перехвачена средой выполнения аддресссанитизер, она сохраняет файл аварийного дампа, содержащий метаданные, связанные с ошибкой. отладчик в Visual Studio версии 16,9 и более поздних версий может анализировать метаданные, сохраненные в файле дампа. Можно задать ASAN_SAVE_DUMPS для каждого теста, сохранить эти двоичные артефакты, а затем просмотреть их в интегрированной среде разработки с надлежащей индексацией исходного кода.

См. также раздел

Обзор AddressSanitizer
Известные проблемы AddressSanitizer
Справочник по сборке и языку AddressSanitizer
Справочник по среде выполнения AddressSanitizer
Теневые байты в AddressSanitizer
Облачное и распределенное тестирование AddressSanitizer
Примеры ошибок в AddressSanitizer