Função SetErrorMode (errhandlingapi.h)
Controla se o sistema ou o processo manipula os tipos de erro graves especificados.
Sintaxe
UINT SetErrorMode(
[in] UINT uMode
);
Parâmetros
[in] uMode
O modo de erro do processo. Esse parâmetro pode ser um ou mais dos valores a seguir.
Valor de retorno
O valor retornado é o estado anterior dos sinalizadores de bits no modo de erro.
Observações
Cada processo tem um modo de erro associado que indica ao sistema como o aplicativo responderá a erros graves. Um processo filho herda o modo de erro de seu processo pai. Para recuperar o modo de erro do processo, use a função GetErrorMode.
Como o modo de erro está definido para todo o processo, você deve garantir que os aplicativos com vários threads não definam diferentes sinalizadores de modo de erro. Isso pode levar a um tratamento de erro inconsistente.
O sistema não torna as falhas de alinhamento visíveis para um aplicativo em todas as arquiteturas de processador. Portanto, especificar SEM_NOALIGNMENTFAULTEXCEPT não é um erro nessas arquiteturas, mas o sistema é livre para ignorar silenciosamente a solicitação. Isso significa que sequências de código como as seguintes nem sempre são válidas em computadores x86:
C++ |
---|
SetErrorMode(SEM_NOALIGNMENTFAULTEXCEPT); fuOldErrorMode = SetErrorMode(0); ASSERT(fuOldErrorMode == SEM_NOALIGNMENTFAULTEXCEPT); |
Visual Studio 2005: Ao declarar um ponteiro para uma estrutura que pode não ter dados alinhados, você pode usar a palavra-chave __unaligned para indicar que o tipo deve ser lido um byte por vez. Para obter mais informações, consulte de Alinhamento de Dados do Windows.
Windows 7: os chamadores de devem favorecer SetThreadErrorMode em SetErrorMode, pois ela é menos disruptiva para o comportamento normal do sistema.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows XP [aplicativos da área de trabalho | Aplicativos UWP] |
servidor com suporte mínimo | Windows Server 2003 [aplicativos da área de trabalho | Aplicativos UWP] |
da Plataforma de Destino |
Windows |
cabeçalho | errhandlingapi.h (inclua Windows.h) |
biblioteca | Kernel32.lib |
de DLL |
Kernel32.dll |
Consulte também
Funções de tratamento de erros
SetThreadErrorMode