Você pode adicionar uma regra de firewall para bloquear qualquer tráfego de entrada e saída antes de executar o aplicativo e desabilitar (ou excluir) as regras de firewall após sair.
Regras do bloco de configuração
:: Variables
set RULE_NAME=TemporaryBlock
set PROGRAM=C:\Program Files (x86)\App\app.exe
netsh advfirewall firewall add rule name="%RULE_NAME%" dir=in action=block profile=any program="%PROGRAM%"
netsh advfirewall firewall add rule name="%RULE_NAME%" dir=out action=block profile=any program="%PROGRAM%"
Execute o aplicativo com a internet bloqueada
@echo off
:: Variables
set RULE_NAME=TemporaryBlock
set PROGRAM=C:\Program Files (x86)\App\app.exe
:: Block the app
netsh advfirewall firewall set rule name="%RULE_NAME%" dir=in new enable=yes
netsh advfirewall firewall set rule name="%RULE_NAME%" dir=out new enable=yes
:: Running the app
start "" /wait "%PROGRAM%"
:: Disable the firewall rules
netsh advfirewall firewall set rule name="%RULE_NAME%" dir=in new enable=no
netsh advfirewall firewall set rule name="%RULE_NAME%" dir=out new enable=no
Detalhes
- documentação:
netsh advfirewall firewall add rule -?
- você também pode criar e excluir as regras toda vez que executar o aplicativo, mas eu gosto de criar as regras uma vez e depois ativá-las ou desativá-las
- você precisa de direitos de administrador