Время на прочтение
7 мин
Количество просмотров 84K
Я хотел бы поведать об одном трюке, который можно провернуть при помощи планировщика заданий в Windows.
У меня установлена Windows 7, а также есть PPPoE-подключение от нашего городского кабельного провайдера.
Задача состоит в том, чтобы включать это подключение сразу же после того, как в винде поднимается подключение к локальной сети, и пользователь может быть ещё даже не вошёл в свою учётную запись.
В большинстве своём инструкции, которые можно найти в рунете, сводятся к вынесению ярлыка подключения в автозапуск. Здесь же иной случай. Необходимо, чтобы подключение производилось ещё до входа в учётную запись пользователя.
Забегая вперёд, скажу, что таким же образом можно сделать выполнение любой другой команды, причём не только при подключении к какой-либо проводной сети, но и к Wi-Fi.
Я привожу полное описание, с кучей скриншотов, как для новичков.
Итак, что у нас есть:
• Windows, в которой есть несколько учётных записей (я создал ещё одну учётку, для наглядности), и Вы не хотите делать автовход в какую-либо из них.
• Подключение с использованием PPPoE, которое необходимо включать сразу после инициализации нужной сети.
• Отсутствует роутер, который на корню решил бы эту проблему, самостоятельно подключаясь и раздавая интернет компам в локальной сети. Ну или роутер не нужен в принципе.
Выясняем уникальный идентификатор подключения (GUID)
Идём в «Пуск» – «Панель управления» – «Система и безопасность» – внизу под «Администрированием» выбираем «Просмотр журналов событий».
В открывшемся окне слева идём по такому пути: «Журналы приложений и служб»/«Microsoft»/«Windows»/«Network Profile»/«Выполняется», находим там строчки с кодом события «10000».
Cреди них находим ту, что относится к нужной сети, у меня это «Сеть 2». Переключаемся на вкладку «Подробности», и вот он, нужный нам GUID.
Сразу можно включить «Режим XML», и просмотреть кусок XML-представления «...
».
В качестве ещё одного варианта, Вы можете найти нужный GUID в реестре по следующему пути:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Profiles
Нужный мне GUID – «{80362A4A-DAFB-4B7E-B00C-22AC773E35A3}».
Пример XML-представления события:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
<System>
<Provider Name="Microsoft-Windows-NetworkProfile" Guid="{FBCFAC3F-8459-419F-8E48-1F0B49CDB85E}" />
<EventID>10000</EventID>
<Version>0</Version>
<Level>4</Level>
<Task>0</Task>
<Opcode>0</Opcode>
<Keywords>0x4000200000000000</Keywords>
<TimeCreated SystemTime="2013-04-28T11:26:41.252839400Z" />
<EventRecordID>157</EventRecordID>
<Correlation />
<Execution ProcessID="572" ThreadID="1664" />
<Channel>Microsoft-Windows-NetworkProfile/Operational</Channel>
<Computer>HWin7VM0-PC</Computer>
<Security UserID="S-1-5-19" />
</System>
<EventData>
<Data Name="Name">Сеть 2</Data>
<Data Name="Description">Сеть</Data>
<Data Name="Guid">{80362A4A-DAFB-4B7E-B00C-22AC773E35A3}</Data>
<Data Name="Type">0</Data>
<Data Name="State">17</Data>
<Data Name="Category">1</Data>
</EventData>
</Event>
Здесь я вижу, что был подключен сетевой профиль «Сеть 2», и вижу его GUID в строке «{80362A4A-DAFB-4B7E-B00C-22AC773E35A3}
».
Создаём .bat-файл
Вам следует убедиться, что PPPoE-соединение у вас настроено так, что его могут использовать все пользователи, если Вы хотите, чтобы подключение производилось от пользователя «Система» или от другой учётной записи. Это необходимо для случая, когда у учётной записи, которую Вы обычно используете, отсутствует пароль на вход. Позже я об этом напомню ещё раз.
Я предполагаю, что соединение у Вас уже настроено, единственное, что необходимо сделать – это создать .bat-файл, в котором нужно будет написать
rasdial MyDearProvider login password
где rasdial – консольное приложение, при помощи которого можно установить соединение, «MyDearProvider» — имя PPPoE подключения, которое необходимо подключить, а «login» и «password», соответственно, логин и пароль к подключению. Сразу в консоли можете проверить, выполняется ли подключение к интернету, запустив этот файл, или можно обойтись без консоли, в целях отладки поставив в следующей строке команду «pause» и запуская файл, но не забудьте убрать потом команду pause, когда добьётесь того, что запуск .bat-файла на выполнение приведёт к подключению к интернету.
Создаём задание в планировщике
Идём в «Пуск» – «Панель управления» – «Система и безопасность» – внизу под «Администрированием» выбираем «Расписание выполнения задач».
Запустится планировщик задач, где слева нужно выбрать «Библиотека планировщика задач», и в правой части окна нажать «Создать задачу…».
В открывшемся окне на вкладке «Общие» заполняем «Имя», например, «Autoconnect_MyDearProvider», ниже в «Параметрах безопасности» выбираем нужного пользователя, от кого будет выполняться подключение, затем «Выполнять вне зависимости от регистрации пользователя», однако, если у выбранного пользователя отсутствует пароль на вход в учётную запись, то подключение не будет производиться, если пользователь не вошёл в систему. В случае, если у вас отсутствует пароль для учётной записи, выберите в качестве пользователя «система». Наивысшие права для задачи не нужны.
На вкладке «Триггеры» будет самое интересное. Нажимаем кнопку «Создать», в открывшемся окне в выпадающем списке «Начать задачу:» выбираем «При событии».
В «Дополнительных параметрах» можно настроить отложенный запуск, я поставил 15 секунд, но потом менял это значение на 5 секунд, потому что надоело ждать, когда тестировал всё это.
В «Параметрах» выбираем «Настраиваемое», чуть правее нажимаем «Создать фильтр события».
Появится окно создания фильтра события. Можно заполнить каркас для фильтра средствами, представленными на вкладке «Фильтр», а потом перейти к XML-представлению созданного фильтра.
Выбираем в поле журналов событий следующее: «Журналы приложений и служб»/«Microsoft»/«Windows»/«Network Profile»/«Выполняется». Ставим возле «Выполняется» галку.
Затем в качестве источника событий выбираем «NetworkProfile».
Код события указываем «10000».
Выглядеть это должно вот так:
Переходим на вкладку «XML», и видим следующее:
Необходимо отредактировать это, иначе триггер будет срабатывать на подключение вообще любой сети, даже на подключение самого PPPoE-подключения.
Нажимаем на галку «Изменить запрос вручную».
Появится предупреждение, что в дальнейшем мы не сможем воспользоваться вкладкой «Фильтр» для настройки этого фильтра, соглашаемся продолжить, нажимая «Да». Получаем следующее:
В месте, где у меня находится курсор (прямо перед закрывающим тегом ), необходимо добавить ещё одно условие.
Дописываем туда «and *[EventData[Data[@Name='Guid']='{80362A4A-DAFB-4B7E-B00C-22AC773E35A3}']]
», поменяв мой GUID «{80362A4A-DAFB-4B7E-B00C-22AC773E35A3}» на какой-то свой.
Нажимаем ОК, чтобы закрыть окно настройки фильтра, и ещё раз ОК, чтобы закрыть настройки триггера. Можете выбрать вновь созданный триггер, нажать «Изменить…», и убедиться, что в дополнительных параметрах осталась включенной настройка «Отложить на:» с нужным количеством времени, у меня эта опция почему-то не сохранилась с первого раза.
На вкладке «Действия» нажимаем «Создать», в открывшемся окне выбираем «Запуск программы», затем нажимаем «Обзор…», и указываем, где находится наш .bat-файл. Кстати, вместо того, чтобы создавать .bat-файл, можно было просто написать в поле «Программа или сценарий» команду rasdial, а в поле с аргументами вписать «MyDearProvider login password», это было бы эквивалентно запуску .bat-файла. Однако, мне кажется, удобнее править текстовый файл, чем бродить по настройкам планировщика задач в поисках нужного поля.
Нажимаем ОК, и затем переходим на вкладку «Условия».
Здесь убираем галку «Запускать только при питании от электросети», если это не нужно. Устанавливаем опцию «Запускать только при подключении к следующей сети:» — ставим ту сеть, которую только что настраивали. В этом нет необходимости, так как фильтр, настроенный ранее, уже содержит в себе это условие, однако, мало ли что может пойти не так, я решил оставить эту настройку включенной.
И, наконец, вкладка «Параметры». Здесь можно оставить включенными «Разрешать выполнение задачи по требованию» и «Принудительная остановка задачи, если она не останавливается по запросу». Нужно снять галку с «Останавливать задачу, выполняемую дольше:».
Для того, чтобы избежать такого случая, как «невозможно подключение с первого раза», можно включить галку «При сбое выполнения перезапускать через:», и выставить какой-то период ожидания, например, 1 минуту. Количество попыток перезапуска я поставил 6. Думаю уж за 6 минут-то должно подключиться.
Наконец, нажимаем «Ок», и получаем необходимое.
Справа нужно нажать на надпись «Включить журнал всех заданий», это поможет при отладке выполнения задачи. После настройки журнал можно отключить.
Переходим в «Центр управления сетями и общим доступом».
Cлева нажимаем «Изменение параметров адаптера», и попадаем в «Сетевые подключения». Выбираем «Подключение по локальной сети», отключаем его. Затем заново включаем и ждём 15 секунд (или столько, сколько настроили в триггере). Под названием PPPoE-подключения через некоторое время должен измениться статус подключения, а в журнале планировщика задач более-менее описаны происходящие события.
Далее Вы можете проверить, как компьютер ведёт себя, перезагрузив его, и дождавшись, когда появится приглашение выбрать пользователя. Если подождать некоторое время, не выбирая пользователя, винда всё равно должна подключиться к PPPoE, даже если ни один пользователь не вошёл в систему. Если у вас статический IP-адрес, тогда проверить, что компьютер подключен к интернету, легче. В моём же случае IP-адрес выдаётся динамически, поэтому я использую DDNS-сервис.
Итак, засекаем, сколько сейчас времени, чтобы потом знать, откуда смотреть логи в журнале задания, и перезагружаем компьютер.
К сожалению, в случае, когда задание выполняется от системы или от другого пользователя, отключить PPPoE-соединение будет возможно только выполнив команду «rasdial MyDearProvider /disconnect» от администратора.
Заключение
Для чего Вам это нужно – решайте сами. Мне, например, это было нужно, чтобы заходить по VNC на комп и иметь возможность перезагрузить его в случае необходимости.
Для тех, кто хочет поэкспериментировать с WiFi-подключением – необходимый журнал находится здесь: «Журналы приложений и служб»/«Microsoft»/«Windows»/«WLAN-AutoConfig»/«Operational». Там можно отловить подключение к какой-то WiFi-сети по её SSID.
UPD: Здесь кроется одно «но»: в журнал NetworkProfile не записывается код 10000 в случае, если Windows выходит из режима гибернации. Однако Windows 7 записывает событие с номером 300 в журнал Microsoft-Windows-Diagnostics-Performance. Вы можете просто добавить ещё один триггер для включения задачи. Это вполне применимо, если компьютер стационарный.
Материалы, которые были использованы в этом топике:
superuser.com/questions/262799/how-to-launch-a-command-on-network-connection-disconnection — описание создания задачи с собственным фильтром.
social.technet.microsoft.com/Forums/en-US/winservergen/thread/fac16f3c-d088-4d66-83d8-7139261dea83 — Как выполнить трассировку сети при возникновении ошибки. Примерно то же самое, что и по предыдущей ссылке, только описания чуть поболее.
superuser.com/questions/92414/how-to-run-a-program-when-connecting-to-a-specific-network-in-windows-7 — случай с WiFi-подключением.
Если для выхода в Интернет на вашем компьютере используется подключение PPPoE (Ростелеком, Дом.ру и другие), L2TP (Билайн) или PPTP, то может оказаться не вполне удобным всякий раз при включении или перезагрузке компьютера снова запускать подключение вручную.
В этой статье речь пойдет о том, как сделать так, чтобы Интернет подключался автоматически сразу после включения компьютера. Это не сложно. Описанные в данной инструкции способы в равной степени подойдут для Windows 7 и Windows 8.
Используем планировщик заданий Windows
Самый разумный и простой способ настроить автоматическое подключение к Интернету при старте Windows — использовать планировщик заданий для этих целей.
Самый быстрый способ запустить планировщик заданий — воспользоваться поиском в меню Пуск Windows 7 или поиском на начальном экране Windows 8 и 8.1. Также можно открыть его через Панель управления — Администрирование — Планировщик заданий.
В планировщике выполните следующие действия:
- В меню справа выберите «Создать простую задачу», укажите имя и описание задачи (необязательно), например, Автоматическое запуск Интернета.
- Триггер — при входе в Windows
- Действие — Запустить программу
- В поле программа или сценарий введите (для 32-битных систем) C:\Windows\System32\rasdial.exe или (для x64) C:\Windows\SysWOW64\rasdial.exe, а в поле «Добавить аргументы» — «Имя_подключения Логин Пароль» (без кавычек). Соответственно, указать нужно свое имя подключения, если оно содержит пробелы, возьмите его в кавычки. Нажмите «Далее» и «Готово» для сохранения задачи.
- Если вы не знаете, какое имя подключения использовать, нажмите клавиши Win + R на клавиатуре и введите rasphone.exe и посмотрите на имена доступных подключений. Имя подключения должно быть на латинице (если это не так, переименуйте его предварительно).
Теперь, всякий раз, после включения компьютера и при очередном входе в Windows (например, если он был в режиме сна), Интернет будет подключаться автоматически.
Примечание: при желании, вы можете использовать иную команду:
- C:\Windows\System32\rasphone.exe –d Имя_подключения
Автоматический запуск Интернета с помощью редактора реестра
То же самое можно проделать и с помощью редактора реестра — достаточно добавить установку подключения к Интернету в автозапуск в реестре Windows. Для этого:
- Запустите редактор реестра Windows, для чего нажмите клавиши Win + R (Win — клавиша с эмблемой Windows) и введите regedit в окне «Выполнить».
- В редакторе реестра зайдите в раздел (папку) HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
- В правой части редактора реестра кликните правой кнопкой мыши в свободном месте и выберите «Создать» — «Строковый параметр». Введите любое имя для него.
- Кликните правой кнопкой по новому параметру и выберите пункт «Изменить» в контекстном меню
- В поле «Значение» введите «C:\Windows\System32\rasdial.exe Имя_подключения Логин Пароль» (см. скриншот, по поводу кавычек).
- Если имя подключения содержит пробелы, возьмите его в кавычки. Также вы можете использовать команду «C:\Windows\System32\rasphone.exe -d Имя_подключения»
После этого сохраните изменения, закройте редактор реестра и перезагрузите компьютер — Интернет должен будет подключиться автоматически.
Аналогично, вы можете сделать ярлык с командой автоматического подключения к Интернету и поместить этот ярлык в пункт «Автозагрузка» меню «Пуск».
Удачи!
Многие провайдеры по всему миру предлагают свои Интернет-услуги через так называемое высокоскоростное PPPoE-соединение (Point-to-Point Protocol over Ethernet). Для связи с Интернетом через PPPoE провайдеры обычно дают своим клиентам уникальное имя пользователя и пароль, которые необходимы для подключения к их сетям.
Недостаток PPPoE заключается в необходимости запускать подключение вручную каждый раз после включения компьютера. Это раздражающее неудобство, о котором многие пользователи хотели бы забыть раз и навсегда. В этой статье я расскажу о настройках, с которыми компьютер с таким соединением будет подключаться к Интернету автоматически во время запуска.
1. Запуск планировщика заданий
В первую очередь нам необходимо запустить штатный планировщик заданий. Наиболее простой и быстрый способ сделать это заключается в использовании окна системного поиска. Введите первые несколько букв ключевого запроса, а затем нажмите на элемент «Планировщик заданий» в результатах поиска.
В Windows 10 планировщик заданий также может быть запущен из меню «Пуск»: Все приложения\Средства администрирования Windows.
В панели управления он находится по следующему пути: Панель управления\Система и безопасность\Администрирование.
Независимо от выбранного способа в результате вы увидите вот такое окно:
2. Планирование автоматического подключения при входе в систему
Теперь нам нужно запланировать автоматическое подключение к Интернету при каждом входе в систему.
В окне планировщика заданий справа жмем «Создать простую задачу».
В окне мастера создания задачи введите имя задачи, например, «Автодозвон». Также можно ввести описание, но это вовсе необязательно. Жмем «Далее».
Далее нужно выбрать, когда конкретно должна выполняться наша задача. Поскольку наша цель заключается в том, чтобы PPPoE-соединение автоматически подключалось к Интернету при каждом входе в систему, выбираем «При входе в Windows». Жмем «Далее».
Предпоследний этап создания задачи – выбор действия. Нам нужно, чтобы PPPoE-соединение запускалось автоматически вместе с Windows. Соответственно выбираем «Запустить программу». Жмем «Далее».
А теперь самая важная часть процесса – настройка сценария, который будет выполняться автоматически.
Для того чтобы система автоматически подключалась к Интернету через PPPoE, необходимо ввести следующую информацию:
- В поле «Программа или сценарий» введите команду rasdial.
- Поле «Добавить аргументы (необязательно)» должно содержать имя подключения (в кавычках), а также имя пользователя и пароль с дефисом перед ними. Например, предположим, что ваше PPPoE-соединение называется WWW, а для подключения к нему вы используете имя пользователя Ivan и пароль 123456. В таком случае необходимо добавить следующие аргументы: «WWW» Ivan 123456.
Поле «Рабочая папка» оставьте пустым.
На заключительном этапе вы увидите краткое описание созданной задачи. Жмем «Готово».
После закрытия мастера вы будете возвращены в основное окно планировщика заданий, где увидите, что ваша задача была добавлена в список остальных запланированных задач.
3. Перезагружаем компьютер и проверяем
Наконец, перезагрузите компьютер, чтобы проверить результат ваших действий. Если все шаги были выполнены правильно, после перезагрузки система должна подключиться к Интернету автоматически. Обратите внимание, что отныне при каждом входе в систему на экране будет ненадолго появляться окно консоли, сигнализирующее о запуске процесса соединения.
Отличного Вам дня!
Тема: PPPOE: автоматическое подключение (Windows 7) (Прочитано 24001 раз)
Настройка автоматического подключения к Интернет при загрузке Windows:
— нажмите кнопку «Пуск», выберите «Панель управления»;
— выберите пункт «Сетевые подключения»;
— выберите PPPoE соединение, нажмите правую кнопку мыши и выберите «Свойства»;
— в разделе «Параметры» снимите галочку «Запрашивать имя, пароль …», нажмите «OK»;
— выберите PPPoE соединение, нажмите правую кнопку мыши и выберите «Cоздать ярлык»;Далее, один из вариантов
— поместите ярлык в папку «Автозагрузка»;
или
— нажмите «Пуск», выберите «Все программы»->»Стандартные»->»Служебные»->»Назначенные задания»;
— запустите «Добавить задание»->»Далее»->»Обзор»->»Рабочий стол»->Ярлык на соединение;
— выберите пункт «При загрузке компьютера», нажмите «Далее» и при необходимости укажите пароль для входа в Windows.
Ни один из предложенных вариантов не работает. Есть ещё предложения (кроме как поставить роутер)?
Записан
Why Try?
Видимо неверно настроили планировщик или он по какой-то причине не работает.
Попробуйте по приведенной тут инструкции.
Записан
Стоит указать в инструкции, что PPPOE-подключение должно быть выключено в момент создания ярлыка.
Записан
Существует множество инструкций по настройке автоматического запуска PPPoE подключения, реализация зависит от операционной системы, особенно в ОС семейства *nix.
Напоминаем, Вы вносите изменения в системные файлы/настройки на свой страх и риск, внимательно выполняйте предлагаемые действия, если после внесенных изменений подключение не соединяется и выдает номер ошибки — попробуйте его удалить и создать заново.
Другой вариант — установка и настройка роутера (маршрутизатора) для локальной сети. При наличии Wi-fi модуля Вы сможете подключить в нему телефон, планшет, ноутбук, телевизор и другую домашнюю электронику.
Внимание! Кабель, приходящий от оборудования Мобайл Тренд должен быть подключен в WAN (Internet) порт роутера. На роутере должно быть настроено PPPoE подключение, а на Wi-fi сеть обязательно должен стоять пароль.
Автоматическое подключение PPPoE в Windows XP
- Зайдите в папку сетевых подключений (Пуск -> Панель управления -> Сетевые подключения) и щелкните по PPPoE соединению (обычно «Мобайл Тренд» или «MTrend») правой кнопкой мыши и выберите «Свойства»;
- В разделе «Параметры» снимите галочку «Запрашивать имя, пароль …», установите галочку «Перезвонить при разрыве связи», нажмите «OK»;
- Щелкните по PPPoE соединению правой кнопкой мыши и выберите «Создать ярлык»;
- Далее Вам нужно:
- либо поместить ярлык в папку «Автозагрузка» (C:\Documents and Settings\All Users\Главное меню\Программы\Автозагрузка);
- либо выбрать (Пуск -> Все программы -> Стандартные -> Назначенные задания), запустить Добавить задание -> Далее -> Обзор -> Рабочий стол -> Ярлык на соединение, выбрать пункт «При загрузке компьютера», нажать «Далее» и при необходимости указать пароль для входа в Windows.
Автоматическое подключение PPPoE в Windows 7
- Зайдите в Пуск -> Панель управления -> Сеть и интернет -> Центр управления сетями и общим доступом -> В меню слева выберите: Изменения параметров адаптера;
- Переименуйте подключение к интернету (обычно «Мобайл Тренд», «MTrend» или «Высокоскоростное подключение») в InternetPPPoE
- Зайдите в C:\Users\Ваше_имя_пользователя_Windows\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
- Создайте там File.bat и пропишите туда команду
Rasdial InternetPPPoE Ваш_логин Ваш_пароль - Перезагрузите компьютер. Теперь при загрузке Windows 7 у Вас будет автоматически появляться маленькое черное консольное окно подключения, которое будет исчезать после автоматического подключения компьютера к интернету.