56

У меня есть подключение к Wi-Fi, которое требует проверки подлинности с помощью веб-формы после установления беспроводной связи. Я знаю, как автоматизировать аутентификацию с помощью скрипта, использующего curl/curlIE.

Но как я могу попросить Windows вызывать мой скрипт каждый раз, когда я подключаюсь к определенному сетевому соединению?

Мне также было бы интересно получить имя беспроводного профиля или ESSID в командной строке моего скрипта.

3 ответа3

75

В Windows Vista и более поздних версиях вы можете сделать это, используя запланированное задание с триггером журнала событий. Первое событие будет вызвано подключением к сети, и вы укажете, к какой сети вы должны подключиться, чтобы он работал. Второе событие будет запущено при отключении от любой сети. Каждое событие будет запускать определенную задачу, которую вы укажете; скорее всего, сценарии, которые вы упомянули написав.

Установка события при подключении к сети:

  1. Откройте планировщик задач. Вы можете найти его, введя Task Scheduler в поле поиска меню "Пуск" или в разделе « Programs | Accessories | System Tools .
  2. В библиотеке планировщика заданий создайте новое задание, нажав « Create Task на панели "Действия" с правой стороны.

    добавить задачу

  3. Дайте заданию имя типа "обнаружение сетевого подключения" или что-то другое.

  4. На вкладке Triggers нажмите New... и выберите On an Event из выпадающего списка.

    выпадающий триггер

  5. Выберите следующие настройки:

    • Журнал: Microsoft-Windows-NetworkProfile/Operational
    • Источник: NetworkProfile
    • Код события: 10000
  6. Нажмите OK, затем перейдите на вкладку Conditions .
  7. Установите флажок Start only if the following network connection is available и выберите сеть, с которой вы хотите запустить скрипт
  8. На вкладке « Actions » нажмите « New... и выберите « Start a program . Введите местоположение файла скрипта, который вы хотите запустить, затем нажмите OK .
  9. Установите любые другие параметры задачи, которые вы хотите, затем нажмите OK .

Установка события, когда вы отключаетесь от сети:

  1. Выполните шаги 2-4 выше
  2. Используйте следующие настройки триггера событий:
    • Журнал: Microsoft-Windows-NetworkProfile/Operational
    • Источник: NetworkProfile
    • Код события: 10001
  3. Пропустите шаги 6-7, так как вы больше не будете подключены ни к одной сети. Таким образом , это событие будет работать в любое время отключить от сети.
  4. Выполните шаги 8-9 снова
7

Похоже, что Start only if the following network connection is available , обрывается после юбилейного обновления Windows 10. Используйте этот пользовательский триггер вместо:

<QueryList>
  <Query Id="0" Path="System">
    <Select Path="Microsoft-Windows-NetworkProfile/Operational">
     *[System[(EventID=10000)]] and *[EventData[(Data[@Name="Name"]="YOUR-SSID-HERE")]]
    </Select>
  </Query>
</QueryList>

В корпоративных сетях вместо имени SSID используется имя домена. В этом случае категория события будет "Домен Аутентифицирован", а не "Частный".

4

Если вы используете Thinkpad, вы можете воспользоваться преимуществами ThinkVantage Access Connection, доступными для Windows 7, Vista и XP.

ThinkVantage Access Connection - это программное обеспечение для управления сетевыми соединениями, поставляемое с ThinkPad - если нет, его можно загрузить с их сайта поддержки. Когда вы создаете новый профиль для своего местоположения, есть мастер, который спрашивает, хотите ли вы настроить список программ для запуска, когда это местоположение подключено. Он также предлагает убить программу, когда сеть отсутствует.

Обратите внимание, что программное обеспечение может быть настроено на работу без какого-либо профиля местоположения вообще, и это, возможно, начальный статус - в этом случае нет способа настроить список программ для запуска при подключении Wi-Fi: вам нужно создать соединение профиль, чтобы содержать список.

Исходя из собственного опыта, я стараюсь избегать использования программного обеспечения - для подключения требуется гораздо больше времени, чем без него, а иногда не удается установить новое соединение при загрузке (это можно исправить путем повторного подключения вручную).

Программное обеспечение работает только с драйвером WIFI, поставляемым с ThinkPad.

Кроме того, это программное обеспечение предлагает установить соединение до входа пользователя в систему, как вариант при создании профиля. Я не знаю, возможно ли это без этого.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .