Sou muito novo em arquivos em lote, então tenha isso em mente. Estou tentando escrever um script que inicie um jogo, espere 30 segundos e defina a prioridade do jogo como alta. Originalmente era assim:
cd "...\Stepmania Etterna\Program\"
Start StepMania.exe
ping 127.0.0.1 -n 30 > nul
wmic process where name="StepMania.exe" CALL setpriority 128
pause
Isso não estava funcionando, mas funciona quando escrevo exatamente a mesma linha wmic em um cmd separado quando o processo está aberto. Tive então a ideia de lançar outro arquivo bat apenas com a linha wmic do original e remover a linha wmic do original. Isso funciona, mas acho que deve haver uma maneira melhor de fazer isso do que lançar dois scripts. Então, minha pergunta é: por que o comando não funciona no exemplo acima, mas funciona quando escrevo exatamente o mesmo comando em um cmd separado? E existe uma maneira de consertar isso?
EDIT: Parece que o jogo em questão está redefinindo a prioridade do processo para o normal sempre que entro no menu principal, mas isso não deve ser um problema, considerando que estou esperando 30 segundos e já passei do menu principal sempre que a prioridade do processo deveria ser alterado pelo script. Não tenho certeza se isso é relevante, mas é apenas algo que notei.