Soy bastante nuevo en el mundo de los archivos por lotes, así que tenlo en cuenta. Estoy intentando escribir un script que inicie un juego, espere 30 segundos y luego establezca la prioridad del juego en alta. Originalmente se veía así:
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
Eso no funcionó, pero funciona cuando escribo exactamente la misma línea wmic en un cmd separado cuando el proceso está abierto. Luego se me ocurrió la idea de iniciar otro archivo bat con solo la línea wmic del original y eliminar la línea wmic del original. Eso funciona, pero creo que tiene que haber una mejor manera de hacerlo que iniciar dos scripts. Entonces mi pregunta es, ¿por qué el comando no funciona en el ejemplo anterior, pero funciona cuando escribo exactamente el mismo comando en un cmd separado? ¿Y hay alguna manera de solucionar esto?
EDITAR: Parece que el juego en cuestión restablece la prioridad del proceso a la normalidad cada vez que entro al menú principal, pero eso no debería ser un problema considerando que estoy esperando 30 segundos y ya pasé el menú principal cuando la prioridad del proceso debería. ser cambiado por el guión. No estoy seguro si eso es relevante, pero es algo que noté.