start "" "%SystemRoot%\Notepad.exe"
Mantenha o ""intervalo entre o início e o caminho do aplicativo.
Explicação adicionada:
Normalmente, quando lançamos um programa a partir de um arquivo em lote como abaixo, teremos as janelas pretas no fundo como o OP disse.
%SystemRoot%\Notepad.exe
Isso era causado pelo Bloco de notas em execução no mesmo prompt de comando (processo). O prompt de comando será fechado APÓS o bloco de notas ser fechado. Para evitar isso, podemos usar o startcomando para iniciar um processo separado como este.
start %SystemRoot%\Notepad.exe
Este comando é adequado, desde que não tenha espaço no caminho. Para lidar com o espaço no caminho por precaução, adicionamos as "aspas como esta.
start "%SystemRoot%\Notepad.exe"
No entanto, a execução desse comando apenas iniciaria outro prompt de comando em branco. Por quê? Se você consultar o start /?, o startcomando reconhecerá o argumento entre o "como o título do novo prompt de comando que será iniciado. Então, para resolver isso, temos o comando assim:
start "" "%SystemRoot%\Notepad.exe"
O primeiro argumento de ""é definir o título (que definimos como em branco), e o segundo argumento de
"%SystemRoot%\Notepad.exe"é o comando de destino a ser executado (que suporta espaços no caminho).
Se precisar adicionar parâmetros ao comando, basta adicioná-los entre aspas, ou seja:
start "" "%SystemRoot%\Notepad.exe" "<filename>"
javawexecutável (não apenasjava, porquejavairá iniciar outra janela em lote): por exemplostart "" "javaw" -jar C:\JavaProject\myApp.jar