Obtener información de diagnóstico acerca de la última excepción generada. Se devuelve información sobre la última excepción generada en la hebra actual en una estructura de salida CCI_EXCEPTION_WIDE_ST. La extensión definida por el usuario utiliza esta función para determinar si se necesita una recuperación cuando una función de utilidad devuelve un código de error.
Puede llamar a esta función, cuando una función de utilidad o una devolución de llamada de salida de usuario indique que se ha producido una excepción, estableciendo returnCode en CCI_EXCEPTION.
El valor devuelto en el campo exception_st.messageNumber para las excepciones que da como resultado un mensaje de excepción catalogado BIP, contiene el nivel de mensaje en los bytes de nivel superior y el número de mensaje BIP en los cuatros bytes de nivel inferior.
Ninguno. Si se produce un error, el parámetro returnCode indica la razón del mismo.
typedef struct exception_wide_st { int versionId; /* Identificación de versión de estructura */ int type; /* Tipo de excepción */ int messageNumber; /* Número de mensaje */ int insertCount; /* Número de inserciones de mensaje */ CCI_STRING_ST inserts[CCI_MAX_EXCEPTION_INSERTS]; /* Matriz de áreas de inserciones de mensaje */ const char* fileName; /* Origen: nombre de archivo */ int lineNumber; /* Origen: número de línea en archivo */ const char* functionName; /* Origen: nombre de función */ CCI_STRING_ST traceText; /* Texto de rastreo asociado a la excepción */ CCI_STRING_ST objectName; /* Nombre de objeto */ CCI_STRING_ST objectType; /* Tipo de objeto */ } CCI_EXCEPTION_WIDE_ST; CCI_EXCEPTION_WIDE_ST exception_st = malloc(sizeof(CCI_EXCEPTION_WIDE_ST)); int rc = 0; memset(&exception_st,0,sizeof(exception_st)); cciGetLastExceptionDataW(&rc, &exception_st);