[RESOLVIDO]Como controlar mensagem de Erro com .BAT?

Olá amigos do GUJ o/

Fiz uma aquivo .bat para executar meu .jar, mas quando ele nao consegue executar quero q exiba uma mensagem de erro personalizada para o usuario (daquelas que faz “PAM!” na tela)

Consegui fazer algo assim:

[quote]@echo off

set APP=App.jar
set APP_HOME=%~dp0

start javaw -jar %APP% %1
IF ERRORLEVEL 1 goto noJavaw
goto end

:noJavaw
echo.
echo Falha de execução java.
echo.
echo Java runtime environment é necessario para executar App.
echo Por favor leia LEIAME.txt em %APP_HOME% instale Java environment primeiro.
echo
pause
goto end

:end[/quote]

O problema e que a menssagem aparece no prompt, mas o windows exibe antes uma mensagem de que nao encontrou o comando javaw em uma janela de erro “PAM!”

Pergunta, como faço para em vez de aparecer essa menssagem de comando nao encotrado, aparecer minha mensagem na janela de erro?

Agradeço a atenção!

Você precisa de 2 batches, uma que chama o javaw e outra que chame essa batch (via comando CALL) e redirecione a saída de erro para NULL. Por exemplo;

@echo off
rem Primeira batch
javaw ....
@echo off
rem Segunda Batch
call primeiraBatch 2> NUL

Acho que é muita complicação para nâo ver uma mensagem de erro, certo?

Valew entanglement! funcionou

Tirei o start do meu batche e criei o segundo para chama-lo como você disse.

Sobre como chamar a janela de erro fiz assim:

Criei um arquivo erro.vbs

msgbox "Erro de JVM", vbcritical, "Erro Faltal"

e chamei no meu batche

[code]@echo off

set APP=App.jar
set APP_HOME=%~dp0

start javaw -jar %APP% %1
IF ERRORLEVEL 1 goto noJavaw
goto end

:noJavaw

start erro.vbs

:end[/code]

hehe muito detalhista :slight_smile:

Se tiver outra forma melhor de fazer isso é muito bem vinda o/