Я пишу службу Win32 на С++. У меня есть собственный макрос Assert, который вызывает DebugBreak() (среди прочего). Когда я запускаю свою службу под Vista, служба падает при достижении вызова DebugBreak() (код операции ассемблера int 3), показывая диалоговое окно сбоя Vista. Код ошибки — 80000003 (жестко заданная точка останова).
Обычно я ожидаю, что моя служба работает с вызовом DebugBreak() без каких-либо действий, когда отладчик не подключен. Почему происходит сбой? Можно ли изменить настройку, чтобы она продолжала работать?