Pues a mi lo que me preocupa es que hace esta instruccion:
Código Delphi
[-]
TNbUtilities.FijarVariable(rsVarResultadoAccion,rsValorFalse);
Fíjate que la instrucción GetLastError no solo muestra el ultimo error, sino el ultimo resultado de una operación de la api. Así que si dentro de esa rutina se llama, aunque solo sea indirectamente, a una API, GetLastError nos estaría devolviendo ese resultado y no el error que nos interesa.