Cuando lanzo un proceso con el comando shell

private shellError as boolean
...
...
funcion principal()
...
...
dim miproceso as process
miproceso = shell "micomando y sus parametros" WAIT FOR READ
if shellError then
.... tratamiento del error
endif


controlo la salida de errores con el sub que viene en la documentación

PUBLIC SUB Process_Error(Content AS String)

DIM sLine AS String

READ #LAST, sLine, -256
Content = Content & sLine
Message(Content)
shellError = TRUE 'variable private que indica la existencia de un error para la función principal que lanza el proceso

END


Pero hay programas que lanzan mensajes de warning por la salida de errores, es decir me levantan un error cuando el proceso no ha abortado.... ¿cómo se pueden diferenciar los errores definitivos de los warnings? ¿Alguien lo sabe?