Как включить сетевое подключение из exe файла?

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by fooger, 19 Jan 2011.

  1. fooger

    fooger New Member

    Joined:
    19 Oct 2010
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    Здравствуйте. Мне необходимо из exe файла включить сетевое подключение, но только на том оборудовании что имеет в себе указанное слово.
    Например: есть 5-6 разных сетевых подключений(беспроводных, проводных, виртуальных, телефонных и т.д.), некоторые включенные, некоторые выключенные. Естественно, что каждое подключение имеет свое оборудование(оно указанно в свойствах), оно может быть как реальным так и виртуальным(например для Hamachi, Oracle VM VirtualBox (менеджер виртуальных машин) и других программ).
    Нужно чтобы при запуске exe файла, включалось то сетевое соединение, в свойствах которого в предложении "Подключается через", будет найдено указанное нами слово. Например в сетевом подключении "Подключение по локальной сети" в свойствах, предложение "Подключается через" имеет значение "Marvell Yukon 88E8053 PCI-E Gigabit Ethernet Controller". Нужно чтобы это подключение включалось только в том случаи если в "Marvell Yukon 88E8053 PCI-E Gigabit Ethernet Controller" будет найдено указанное нами слово(или его часть), например "Marvell" , "Yukon" или "arvell Yuk". Я понимаю что это нужно сделать в несколько следующих этапов:
    1. В программе получить список всех сетевых подключений.
    2. Из каждого подключения извлечь название оборудования через которое оно подключается.
    3. Перебрать все полученные название оборудований, и в каждом оборудовании произвести поиск указанного нами слова.
    4. Если слово найдено в названии оборудования, то включить это сетевое соединение. Если для этого слова будет найдено больше чем одно подключение то включить все что найдено.
    Как это и на каком языке программировании это осуществить? Нужен код.
    Большое спасибо.
     
  2. drim

    drim Member

    Joined:
    27 Aug 2009
    Messages:
    347
    Likes Received:
    33
    Reputations:
    4
    ИМХО, без написания драйвера тут не обойтись. пишешь драйвер, перехватывающий сетевые запросы (что есть "сетевые запросы"?) твоего приложения и принимающий решение.
    ЗАПРОСТО могу ошибаться, т.к. в WIN API не силён.
     
  3. fooger

    fooger New Member

    Joined:
    19 Oct 2010
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    спасибо.
    drim, я вообще в программировании не силен, но почему-то мне кажется что это можно осуществить без драйвера. Что из 4 пунктов написанных выше, нельзя сделать без драйвера?
    Может еще кто-то мне может помочь?
     
    #3 fooger, 22 Jan 2011
    Last edited: 14 Feb 2011
  4. GlooK

    GlooK Elder - Старейшина

    Joined:
    20 Apr 2007
    Messages:
    172
    Likes Received:
    53
    Reputations:
    10
    Юзай программу devcon.exe или гугли её исходники.
     
  5. fooger

    fooger New Member

    Joined:
    19 Oct 2010
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    Большое спасибо!!!! Лучшего решения моей проблемы и быть не могло!! Я знал, я верил что решение существует)) ..
    все что мне нужно, это написать
    devcon.exe enable *тут фраза, слово или часть названия оборудования, которое необходимо включить*
    А на других форумах не знали)
    Еще раз большое спасибо.
     
  6. dos999

    dos999 Elder - Старейшина

    Joined:
    15 Feb 2008
    Messages:
    137
    Likes Received:
    24
    Reputations:
    0
    да... devcon.exe рульная штука. я ей usb порты ребутил когда зависали)
    devcon.exe restart *usb*
    отличный результат даёт