Нежелательная точка останова в ntdll.dll!_LdrpSnapThunk@36() + 0xf5 байт

Я отлаживаю DLL-надстройку Outlook в следующей среде: Windows 7 x64 Office 2013 x86, работающая по принципу "нажми и работай", только Visual Studio 2010 Native (C++)

"Показывать моментальные снимки загрузчика" отключен на системном уровне и для outlook.exe в реестре как x86, так и x64, и я убедился, что нигде не существует переопределенного значения реестра "GlobalFlag".

Единственное значение "GlobalFlag" в системе установлено в 0x00000400 (только FLG_POOL_ENABLE_TAGGING) и находится в CurrentControlSet.

Когда я присоединяю отладчик VS к OUTLOOK.EXE (моя DLL уже загружена), я могу отладить его, как ожидается (загрузка символов и т. Д.), Но в случайное время я достигаю этой точки останова, независимо от того, что я делаю.

Зачем мне получать точки останова в LdrpSnapThunk? Я не смог найти никакой опции, чтобы даже установить / включить такие точки останова (оснастка загрузчика должна печатать только строку отладки, а не вызывать точку останова, AFAIK).

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

Спасибо!

1 ответ

Решение

Приведенный выше комментарий Ганса помог мне решить эту проблему. Для дальнейшего использования - вам необходимо отключить "Экспортировать фильтрацию доступа к таблице адресов" (EAF) для OUTLOOK.EXE в окне "Конфигурация приложения" в EMET.

Другие вопросы по тегам