Isso é alguma maneira de executar comandos específicos no arquivo em lotes quando foi fechado?

1

No meu caso, estou executando um arquivo de lote chamado file.bat

quando meus usuários o fecham usando o botão canto superior direito [X] close, eu gosto que ele precise executar alguns programas antes de fechar ..

Por exemplo, eu quero que meu programa se esconda antes de fechar, executando algumas linhas de comando quando o usuário fechar o lote executando cmd. (usando [X] botão fechar)

ren file.bat file.bak
attrib +s +h file.bak

Eu quero rodar estas duas linhas de comando no final do programa antes que os usuários o fechem usando o botão superior direito fechar [X]. Então pls me ajude vcs. Eu não tenho ideia de como fazer isso. Muito obrigado antecipadamente. Pls ajuda ..

    
por Philip 15.08.2017 / 07:21

1 resposta

0

Então, o que você precisa fazer é criar um script em lote do wrapper que será executado de forma invisível usando o VBScript. Esse arquivo em lote abrirá outra janela de comando para o script em lote principal que você deseja executar, e quando esse script for finalizado por qualquer meio, ele carregará nossos comandos restantes dentro do script

'Run Batch Invisible
CreateObject("Wscript.Shell").Run chr(34) & "C:\Path\Script Files\Wrapper.cmd" & Chr(34), 0, False

Em seguida, temos o wrapper.cmd:

REM Script: Wrapper.cmd
REM This script will Open another window, which, when closed will run a couple of commands.
SET "_BatchPath=C:\Path\Script Files"
SET "_BatchName=Your_Existing_Batch"
CALL START /WAIT "%_Batch%\%_BatchName%.bat"
MOVE /Y "%_Batch%\%_BatchName%.bat" "%_Batch%\%_BatchName%.bak"
Attrib +s +h "%_Batch%\%_BatchName%.bak"
GOTO :EOF

Este exemplo está usando os comandos de exemplo que você colocou.

    
por 26.01.2018 / 20:48