Отладчик MSVC непрерывно останавливает исполнение для SEHC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Отладчик MSVC непрерывно останавливает исполнение для SEH

Сообщение Anonymous »

У меня есть функция isptrReadable , которая использует SEH для проверки неверных указателей.

Код: Выделить всё

bool DXHR::IsPtrReadable(void* pointer) {

__try {

volatile char test = *(char*)pointer;

return true;

}
__except (GetExceptionCode() == EXCEPTION_ACCESS_VIOLATION ? EXCEPTION_EXECUTE_HANDLER : EXCEPTION_CONTINUE_SEARCH) {

return false;

}

}
Я ожидаю, что isptrReadable в конечном итоге встретить nullptr и недопустимые указатели. Вот почему у меня есть это внутри блока SEH. Проблема в том, что при отладке мое приложение MSVC останавливает выполнение каждый раз, когда это происходит. Что является неприятностью, потому что меня не интересует, когда это происходит в этой конкретной функции. Но я бы хотел, чтобы он все еще остановился и показал мне, какую строку нарушение доступа происходит на вне этой функции.
Как я могу это достичь?

Подробнее здесь: https://stackoverflow.com/questions/795 ... on-for-seh
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»