Программирование для Windows NT (том 2)


Динамический импорт функций во время выполнения приложения - часть 4


Для того чтобы отключить режим вывода диалоговой панели с сообщением о невозможности загрузки DLL-библиотеки, вы можете использовать функцию SetErrorMode, передав ей в качестве параметра значение SEM_FAILCRITICALERRORS:

UINT nPrevErrorMode;

nPrevErrorMode = SetErrorMode(SEM_FAILCRITICALERRORS);

hDLL = LoadLibrary("DLLDEMO.DLL");

if(hDLL != NULL)

{

  // Работа с DLL-библиотекой

  . . .

}

SetErrorMode(nPrevErrorMode);

Приведем прототип функции SetErrorMode:

UINT WINAPI SetErrorMode(UINT fuErrorMode);

Эта функция позволяет отключать встроенный в Windows обработчик критических ошибок. В качестве параметра этой функции можно указывать комбинацию следующих значений:

Значение

Описание

SEM_FAILCRITICALERRORS

Операционная система Microsoft Windows NT  не выводит на экран сообщения обработчика критических ошибок, возвращая приложению соответствующий код ошибки

SEM_NOGPFAULTERRORBOX

На экран не выводится сообщение об ошибке защиты памяти. Этот флаг может использоваться только при отладке приложений, если они имеют собственный обработчик такой ошибки

SEM_NOOPENFILEERRORBOX

Если Microsoft Windows NT  не может открыть файл, на экран не выводится диалоговая панель с сообщением об ошибке

Функция SetErrorMode возвращает предыдущий режим обработки ошибки.




- Начало -  - Назад -  - Вперед -