Конференция "WinAPI" » SetErrorMode(SEM_FAILCRITICALERRORS)
 
  • Илья Троицкий (09.12.11 18:12) [0]
    Здравствуйте.
    Есть динамически загружаемая Dll, которая статически импортирует несуществующую фунцкию из еще одной DLL. При этом, если перед загрузкой первой dll не вызвать SetErrorMode(SEM_FAILCRITICALERRORS), то система покажет MessageBox с ошибкой и именем этой несуществующей функции. А если вызвать, то диалога не будет, но и имени тоже не получить. Как можно получить информацию, показываемую в этом диалоге? SetUnhandledExceptionFilter(MyExceptionFilter) в вызывающем приложении не помог(в фильтр управление при ошибке не приходит). Спасибо.
  • Илья Троицкий (12.12.11 15:20) [1]
    На самом деле, помог AddVectoredExceptionHandler(1, @MyVectoredHandler); Управление приходит с ExceptionInfo^.ExceptionRecord^.ExceptionCode = STATUS_ENTRYPOINT_NOT_FOUND - $c000139 Так что ошибка, по крайней мере, ловится. Но как узнать имя процедуры?
 
Конференция "WinAPI" » SetErrorMode(SEM_FAILCRITICALERRORS)
Есть новые Нет новых   [134430   +4][b:0][p:0]