Recuerda que las DLL se ejecutan en el servidor... asi que todo lo que mandes a ejecutar en el servidor en las UDF's ahi se realizará y si mandas a desplegar mensajes ahi se desplegarán...
lo que debes hacer es en tu caso si el mensaje es de un error en la ejecución de tu procedimeinto es lanzar una excepcion en el mismo que sera enviada al cliente que hizo la peticion, algo mas o menos asi:
Código SQL
[-]
IF (NEW.PRD_HORAFINAL < NEW.PRD_HORAINICIAL) THEN
EXCEPTION EX_HORARIOINVALIDO;
ahora que si lo que deseas es notificar a tus clientes de algo en especial sin que sea precisamente un error lo puedes hacer utilizando los eventos y los manejadores de eventos del lado del cliente, en este caso algo mas o menos asi:
Código SQL
[-]
CREATE TRIGGER GEN_MENSAJES_AI FOR GEN_MENSAJES ACTIVE
AFTER INSERT POSITION 0
AS
BEGIN
Post_EVENT 'CambioenMensajes';
END
Solo como anotación, cuando usas excepciones se cancela el procedimiento y se aplica un rollback en automático, segun tengo entendido
Saludos