Como capturar evento de conexão com a Internet no Windows Task Scheduler?

4

Estou tentando criar uma tarefa simples no Windows 7 que executaria algum script após cada conexão com a Internet. Meu gateway é reiniciado algumas vezes e eu quero executar esse script sempre que a conexão com a Internet for restaurada.

No assistente de criação de tarefas, escolho que a tarefa inicie "Quando um evento específico for registrado". Mas não sei qual.

romano
fonte
Se você não consegue encontrar rapidamente o evento registrado correto, por que não desconectar sua rede e ver o que está registrado (o visualizador de eventos com uma visualização personalizada dos eventos nos últimos 10 minutos facilitará isso). Mas observe: uma conexão de rede não necessariamente se conecta à Internet. Sem alguma ferramenta de teste que use alguma heurística para determinar se uma determinada conexão de rede (um computador pode ter várias) possui conectividade. Tudo o que você pode fazer é acionar uma conexão de rede e estar preparado para nenhuma rota para a Internet.
Richard
Eu apenas tentei capturar todos os eventos durante um período em que desconectei o modem do gateway e o reconectei. Não houve eventos. Mas quando eu desconectei o gateway, alguns NetworkProfileeventos foram capturados. No entanto, como você disse, a conexão de rede não garante a presença de conexão com a Internet.
Roman
Seu problema é que, quando o gateway é desconectado, não há nada para o computador detectar diretamente (por exemplo, nenhuma alteração de hardware); portanto, tudo precisa ser indireto.
Richard

Respostas:

7

Eu usaria o Agendador de tarefas para acionar o script na conexão a uma rede e, em seguida, usaria o script para confirmar a presença da Internet.

O log de eventos Microsoft-Windows-NetworkProfile / Operational obtém um evento 10000 na conexão com uma rede, para que você possa usá-lo para acionar seu script.

Então, no início do script, você poderia ter algo como:

ping 8.8.8.8 | find "Reply"
if errorlevel 1 goto :eof

# Your script
Paulo
fonte
Obrigado, funciona. Além disso, adicionei um atraso de 30 segundos, apenas para ter certeza.
Roman