a3deluxe Posted July 17, 2014 Report Share Posted July 17, 2014 Boas Estou com dificuldades em abrir um ficheiro bat porque tem no seu conteudo uma password. Isto e: - este bat executada o exe do programa principal. dentro do bat: \programa.exe t37ftds ---> isto e a password para correr o exe principal. tentei assim: shell("c:\programa.bat") nao funciona porque tenho que adicionar t37ftds ao shell para funcionar? Link to comment Share on other sites More sharing options...
ribeiro55 Posted July 17, 2014 Report Share Posted July 17, 2014 À partida deveria funcionar, colocando à frente. Porque é que não experimentas? Alternativamente, tens o Process.Start() Process.Start("c:\programa.bat","t37ftds") Sérgio Ribeiro "Great coders aren't born. They're compiled and released""Expert coders do not need a keyboard. They just throw magnets at the RAM chips" Link to comment Share on other sites More sharing options...
a3deluxe Posted July 17, 2014 Author Report Share Posted July 17, 2014 Pois Ribeiro55, assim não funciona. Não sei porque. ele abre e fecha logo. Se executar o Programa.bat manualmente ele funciona. Link to comment Share on other sites More sharing options...
ribeiro55 Posted July 17, 2014 Report Share Posted July 17, 2014 Quando fazes um process.start, o contexto de execução é diferente do contexto de execução normal. Podes usar o ProcessInfo para indicares o caminho de execução. O mais certo é o teu batch estar a sair em erro. Usa o "PAUSE" no batch para perceberes onde está a correr mal. Sérgio Ribeiro "Great coders aren't born. They're compiled and released""Expert coders do not need a keyboard. They just throw magnets at the RAM chips" Link to comment Share on other sites More sharing options...
rafael59 Posted August 4, 2014 Report Share Posted August 4, 2014 (edited) Shell("c:\programa.bat t37ftds") Edited August 4, 2014 by rafael59 Link to comment Share on other sites More sharing options...
a3deluxe Posted August 21, 2014 Author Report Share Posted August 21, 2014 Boas Ainda não consegui resolver esta situação. Link to comment Share on other sites More sharing options...
ribeiro55 Posted August 22, 2014 Report Share Posted August 22, 2014 Eu testei na altura. Funciona bem. O problema está, portanto, no teu lote. Já sugeri utilizares um ProcessInfo para especificares o contexto de execução e ainda o PAUSE para que a janela não feche sozinha e possas ver o lote a executar. Mais do que isto, só se mostrares o teu batch e os locais de execução. Sérgio Ribeiro "Great coders aren't born. They're compiled and released""Expert coders do not need a keyboard. They just throw magnets at the RAM chips" Link to comment Share on other sites More sharing options...
a3deluxe Posted August 22, 2014 Author Report Share Posted August 22, 2014 Boas, Consegui da seguinte maneira: // Process.Start("cmd", "/c c:\programa.exe, t37ftds ") Isto porque o Ficheiro BAT que eu queria executar no seu interior tinha isto: ----Ficheiro BAT---- programa.exe t37ftds --------------------------- Agora queria fazer o mesmo para outro ficheiro, mas também não estou a conseguir. // Process.Start("cmd", "/c D:\jogo\jogo.exe @cd game @mame jocrd") ----- Ficheiro Bat ---- Jogo.exe @cd game @mame jocrd --------------------------- Não abre o programa. Se executar o BAT normalmente ele abre. Obrigado pela ajuda Link to comment Share on other sites More sharing options...
a3deluxe Posted August 22, 2014 Author Report Share Posted August 22, 2014 Resolvido... Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now