Как я могу запустить скрипт, когда мое сетевое соединение изменяется?

Diskeeper является одним из тех, который обычно упоминается. Утилита дефрагментации Microsoft является ограниченной версией (severly) дефрагментатора диска Diskeeper согласно KB130539.

6
задан 15 June 2009 в 21:23
6 ответов

"Сетевой сервис" Осведомленности Местоположения (http://msdn.microsoft.com/en-us/library/ms739931 (По сравнению с 85) .aspx) в Windows XP (и 2000? Я не вспоминаю...), и добавит эту функциональность, но я не нашел, где кто-либо записал приложение для использования в своих интересах ее. Я хотел бы кодировать что-то сам, но у меня нет достаточных свободных циклов, чтобы даже начать думать об этом.

Это не было бы простой небольшой вещью VBScript, но это не будет так много кодирования также. Возможно, кто-то мог взять идею и выполнение с нею. Существует даже пример кода по http://www.microsoft.com/downloads/details.aspx?familyid=ef8a6228-f11d-4ba0-b73e-dd8dc7dd11e8&displaylang=en.

Были многочисленные времена, я хотел эту функциональность, и я думал бы, что существуют больше, чем несколько человек, которые хотели бы видеть его.

2
ответ дан 3 December 2019 в 00:18
  • 1
    Я, сэр, учту Ваш вызов... в конечном счете. Я мог бы баловаться этим очень скоро как моим запоздалым вкладом в сообщество разработчиков ПО с открытым исходным кодом. –  Michael Haren 15 June 2009 в 21:33
  • 2
    Серьезно, ищите меня если you' ре, собирающееся кодировать что-то. Если you' ll лицензируют Ваш код с GPL, MPL или некоторой другой довольно открытой лицензией (и код на самом деле работает), I' ll бросают немного денег Ваш путь. –  Evan Anderson 15 June 2009 в 22:10
  • 3
    Я don' t знают если it' s улучшил любого в последние годы (XP SP1 сообщения во всяком случае), но я записал много времени несколько лет назад, пытаясь создать код, который использовал NLA, и я пришел к выводу, что NLA был в значительной степени бесполезен, потому что могли потребоваться минуты для увольнения события после изменения (сеть connect\disconnect\whatever). Если я вспоминаю правильно IPHelper API' s NotifyRouteChange было намного быстрее (части секунды), но очевидно более ограниченным в том, что инициирует его. –  Helvick 30 June 2009 в 09:27

Я имел некоторый успех с Сетевыми Профилями прежде.

1
ответ дан 3 December 2019 в 00:18
  • 1
    Это, кажется, работает вполне хорошо. Я должен выяснить, как сделать отдельные вещи как бесшумный режим машина, но похоже, что я мог связать cmdlet в это довольно легко. Это переключает профили на основе имени WI-FI, которое является достаточно для меня.Спасибо! –  Michael Haren 15 June 2009 в 23:29

Вы могли создать пакетный файл, который читает результаты команды ipconfig, и имейте выполняемый каждые 5 секунд или так...

0
ответ дан 3 December 2019 в 00:18
  • 1
    Eww... ick. Уже существует сервис в ОС для обработки этого. Кто-то просто должен написать код. I' d быть более, чем готовым внести немного денег в разработку утилиты с открытым исходным кодом для использования этой функциональности. –  Evan Anderson 15 June 2009 в 21:31
  • 2
    В то время как я ценю, добивается цели менталитет позади этого подхода, I' ll требуют чего-то немного более изящного –  Michael Haren 15 June 2009 в 21:34

Используя версию 2 платформы .NET возможно использовать Систему. Сеть. Пространство имен NetworkInformation. От этого можно определить:

доступность сети: NetworkAvailabilityChangedEventHandler () изменения сетевого адреса: NetworkAddressChangedEventHandler () ipaddress: IPAddressInformation

и так далее.

Сколько из этого доступно через powershell, я не знаю, потому что я не использую его. Но я записал очень простое приложение лотка vb.net, которое просто контролирует доступность сети и подключения к сетевому ресурсу, когда сеть доступна. Если Вы интересуетесь скелетами кода, затем сообщенного мне.

1
ответ дан 3 December 2019 в 00:18

Это - своего рода поперечный и частичный ответ (и даже зарегистрированный, потому что я, может казаться, не нахожу исходную статью), но я - абсолютно уверенный Windows 7, имеет окно свойств на объекте принтера разрешение Вам изменить значения по умолчанию в зависимости от подсети.

Я хотел бы видеть, что функции обращаются к остальной части Вашего списка, также.

1
ответ дан 3 December 2019 в 00:18

Нужная вам переменная Apache называется % {SCRIPT_FILENAME} .

В PHP $ _ SERVER суперглобальные оба SCRIPT_NAME и SCRIPT_FILENAME существуют, но в Apache существует только % {SCRIPT_FILENAME} .

Из документации не ясно, что конкретно каждая из переменных PHP содержит, но в моем тестировании SCRIPT_FILENAME - это полный путь к файловой системе, а SCRIPT_NAME - это либо путь от корня документа, либо компонент пути URL-адреса.

перейдите к Вашему любимому файлу сценария.
  • ОК, это диалоговое окно.
  • Настройте вкладку «Условия», относящуюся к условиям «Неактивный режим», «Питание от сети переменного тока» и т. д. по своему вкусу.
  • Также выполните настройку на вкладке «Настройки».
  • Хорошо, здесь все готово.
  • Протестируйте новое событие.
  • На всякий случай, там также доступны события для компьютера «Приостановить» и «Возобновить». Я, например, использую их, чтобы останавливать и перезапускать Hamachi при этих событиях, поскольку в противном случае на моем компьютере возникают проблемы.
    Для компьютера «Suspend» Вы можете использовать журнал «Microsoft-Windows-Kernel-Power / Thermal-Operational», источник «Kernel-Power» и идентификатор события 42.
    Для компьютера «Возобновить» вы можете использовать журнал «Система», источник «Средство устранения неполадок с питанием», а идентификатор события равен 1.

    Для входа / выхода пользователя я не знаю событий в Планировщике заданий (но я считаю они также доступны там), но вы можете настроить это вместо этого здесь:

    1. Запустить gpedit.msc
    2. Открыть «Конфигурация пользователя»
    3. Открыть «Настройки Windows»
    4. Нажмите «Сценарии (Вход в систему / Выход) »
    5. На правой панели Вы можете назначить сценарии для событий« Вход »и« Выход ». Обратите внимание: если вы назначаете несколько сценариев, не предполагайте, что они выполняются синхронно. Они не могут. В этом случае используйте вместо этого один сценарий, который последовательно вызывает другие сценарии. Я не t проверил, под какой учетной записью запускаются эти сценарии - пользовательская или системная?

    Вы можете сделать аналогичные действия для событий компьютера «Запуск» и «Завершение работы» в папке «Конфигурация компьютера» в том же окне. Сценарий запуска запускается под системной учетной записью до того, как пользователь войдет в систему.

    5
    ответ дан 3 December 2019 в 00:18

    Теги

    Похожие вопросы