Tente isto:
START /WAIT !_MSTSC! !_FILE! !_CONSOLE!
onde
- ! _ MSTSC! é o caminho para o MSTSC.EXE
- ! _ ARQUIVO! é um caminho para um arquivo RDP salvo, contendo hostname, login e pwd, talvez o nome de um arquivo para executar na conexão, blah blah blah
- ! _ CONSOLE! está definido como "" (nulo) ou "/ ADMIN" conforme necessário
Isso depende do WAIT no MSTSC explicitamente, não apenas da "abertura bem-sucedida" do seu arquivo RDP. Como tal, deve (!) Funcionar um pouco melhor.
E ... aqui está uma advertência interessante do STARTtext:
If Command Extensions are enabled, external command invocation
through the command line or the START command changes as follows:
When executing an application that is a 32-bit GUI application, CMD.EXE
does not wait for the application to terminate before returning to
the command prompt. This new behavior does NOT occur if executing
within a command script.
Então ... o que pode ser necessário aqui é envolver o comando MSTSC e os parâmetros em um arquivo CONNECT-REMOTE.CMD e esperar que o THAT termine.