Для того чтобы отключить режим вывода диалоговой панели с сообщением о невозможности загрузки 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 возвращает предыдущий режим обработки ошибки.