winbase.h


SetLastError

La función SetLastError asigna el código de último error para el proceso que la llame.

Sintaxis

VOID SetLastError(
    DWORD dwErrCode  // código de error para el hilo
   );

Parámetros

dwErrCode: especifica el código de último error para el hilo.

Valor de retorno

Los códigos de error son valores de 32 bits (el bit 31 es el de mayor peso). El bit 29 se reserva para códigos de error definidos por la aplicación; ningún código de error del sistema tiene este bit activo. Si se define un código de error para una aplicación, hay que activar este bit a uno. Esto indica que el código de error ha sido definido por una aplicación, y asegura que el código de error no entra en conflicto con cualquier código de error definido por el sistema operativo.

Esta función se orienta fundamentalmenta a bibliotecas de enlazado dinámico (DLLs). Llamando a esta función después de que ha ocurrido un error permite a una DLL emular el comportamiento de una función de Win32.

Muchas funciones de Win32 llaman a SetLastError cuando fallan. El fallo de una función se indica generalmente mediante un valor de retorno de código de error como FALSE, NULL, 0xFFFFFFFF o -1. Algunas funciones llaman a SetLastError bajo condiciones de éxito; esos casos se indican en la referencia de cada función.

Las aplicaciones pueden recuperar el valor guardado por esta función usando la función GetLastError. El uso de GetLastError es opcional; una aplicación puede llamarla para encontrar el motivo específico por el que una función ha fallado.

El código de último error se almacena en la memoria local del hilo, de modo que los hilos no sobrescriben los valores entre ellos.