Отключение-подключение интернета. |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.
Отключение-подключение интернета. |
Krjuger |
Сообщение
#1
|
Профи Группа: Пользователи Сообщений: 652 Пол: Мужской Реальное имя: Алексей Репутация: 20 |
Здраствуйте,нужно написать программу на С++,которая будет принудительно отключать и через N-ный промежуток времени включать интернет.Дело в том,что ни на форуме да и в гугле я найти никакой инфы не смог.Поэтому если кто то обладает информацией киньте ссылку,чтобы было откуда начать шагать,а заодно в последствии помоч в разработке самой программы.Винда Хр ,внешний модем стримовский.
|
volvo |
Сообщение
#2
|
Гость |
Начать копать можно отсюда:
INetConnection Interface. Для WinXP подойдет, в новых версиях Windows - не уверен, читай ремарки в MDSN внимательно. Отключение соответствующего сетевого соединения (network connection) приведет к невозможности его использования. Где-то на expert-exchange выкладывался пример использования этого интерфейса для отключения/подключения Интернета. Искать сейчас некогда, попробуй поискать сам. Если у тебя нет аккаунта в ЕЕ - в ГуглоКэше должно было сохраниться... |
Krjuger |
Сообщение
#3
|
Профи Группа: Пользователи Сообщений: 652 Пол: Мужской Реальное имя: Алексей Репутация: 20 |
Цитата INetConnection Interface Это я более менее понял,но это уже идет обработка события,а для начала,надо как то это событие создать..Насчет Экспертов,да там поднята парочка подобных тем,но прочитать коментарии из всех я смог только в 1 и то не очень понял. Цитата In general declarations: Private Declare Function InternetAutodial Lib "wininet.dll" (ByVal dwFlags As Long, ByVal dwReserved As Long) As Long Private Const INTERNET_AUTODIAL_FORCE_ONLINE = 1 Private Const INTERNET_AUTODIAL_FORCE_UNATTENDED = 2 Private Declare Function InternetAutodialHangup Lib "wininet.dll" (ByVal dwReserved As Long) As Long Private Sub Command1_Click() 'Shell "rundll32.exe rnaui.dll,RnaDial" & "your dial-up connection", 1 'To prompt the user to connect to the Internet use: ' If InternetAutodial(INTERNET_AUTODIAL_FORCE_ONLINE, 0) Then ' MsgBox "Connected" End If 'To display the "Dial-up Connection" window and automatically start dialing use: If InternetAutodial(INTERNET_AUTODIAL_FORCE_UNATTENDED, 0) Then 'MsgBox "Connected" End If 'To disconnect an automatically dial Internet connection use: ' If InternetAutodialHangup(0) Then ' MsgBox "Disconnected" End If Но что то это через чур мудрено и явно не для СИ++.По крайней мере я не совсем представляюю как dll библиотеку подключить эту. |
volvo |
Сообщение
#4
|
Гость |
|
Krjuger |
Сообщение
#5
|
Профи Группа: Пользователи Сообщений: 652 Пол: Мужской Реальное имя: Алексей Репутация: 20 |
Цитата All comments and solutions are aviable to premium service members only. Так что не могу я посмотреть его ответ даже через кеш.Все атки там люди не глубые администрируют сайт)))) Так что если тебя не затруднит не мог бы ты суда скопироват что там написано,как я понмаю у тебя доступ то есть. Сообщение отредактировано: Krjuger - |
volvo |
Сообщение
#6
|
Гость |
Цитата Так что не могу я посмотреть его ответ даже через кеш. А ты до конца страничку-то вниз прокрути... Сначала - сообщения "All comments and solutions are aviable to premium service members only.", потом - рекламный блок. А потом - чудо, правда? - открытым текстом сами сообщения... С Гуглом не проходят такие штуки, он все видит |
Krjuger |
Сообщение
#7
|
Профи Группа: Пользователи Сообщений: 652 Пол: Мужской Реальное имя: Алексей Репутация: 20 |
Воистину я лол....
Нечто подобное на намного более примитивное я пытался написать...
Скомпилироваться то оно скомпилировалось, а вот отработать не захотело.Лан щас попробую на базе того что ты давал. Сообщение отредактировано: Krjuger - |
Krjuger |
Сообщение
#8
|
Профи Группа: Пользователи Сообщений: 652 Пол: Мужской Реальное имя: Алексей Репутация: 20 |
Тааак,я попробовал скомпилировать и посомтреть тот код, про кторый ты говорил,что то он у меня не работает а точнее он не проходит проверку.
А вместо имени там выводится какая то белиберда на китайском.короче эту проверку не проходит и выкидывает сразу на ошибку. И еще такой вопрос,надо ли отключать анитирусы и файрволы, а то они не любят когда такие дела проворачиваются.или же все таки пропускают такие манипулции? Сообщение отредактировано: Krjuger - |
volvo |
Сообщение
#9
|
Гость |
А можно посмотреть, с какими параметрами запускается программа? Ей вообще-то должно передаваться как минимум 2 параметра: первый - название интерфейса (для примера - "Local Area Connection"), который надо отключить/включить, второй - "0" для отключения, "1" для включения.
|
Krjuger |
Сообщение
#10
|
Профи Группа: Пользователи Сообщений: 652 Пол: Мужской Реальное имя: Алексей Репутация: 20 |
А по моему наоборот так как первый параметр интовый тобиш число,а второй массив символов.лан щас попробую ручками передать.
|
volvo |
Сообщение
#11
|
Гость |
А еще лучше - так:
(это для отключения, для включения - надо последним параметром передать "1") Там же все написано, кодом, какие параметры откуда читаются, и как потом обрабатываются... Я, кстати, запускать и ставить эксперименты на рабочей машине не буду, это так, для информации. Добавлено через 2 мин. Цитата А по моему наоборот так как первый параметр интовый тобиш число,а второй массив символов Зарекался уже тебе отвечать - нет, опять ответил. Знаешь что, иди ка ты... Учи язык, а? Где у тебя первый параметр интовый? Где второй - массив символов?Цитата swprintf(ifname,L"%S",argv[1]); //Copy the interface name "Local Area Connection" В общем, с тобой ясно, до свидания. |
Krjuger |
Сообщение
#12
|
Профи Группа: Пользователи Сообщений: 652 Пол: Мужской Реальное имя: Алексей Репутация: 20 |
Не ты меня наверно немного не понял.У меня в программе до этого даже не доходило.....Насчет того что ты запускать на своем компе не будет это я прекрасно понимаю.Насчет параметров я имел в виду
У меня проверку argc не проходило,так что это наверно недопонимание между нами возникло.Так что не надо уж так радикально то..В этой сфере я действительно знаю оочень мало.Поэтому и прошу помощи. Да до этого мы пару раз довольно бурно дискутировали,но зачем же каждый раз так "в штыки" меня воспринимать то. Сообщение отредактировано: Krjuger - |
Krjuger |
Сообщение
#13
|
Профи Группа: Пользователи Сообщений: 652 Пол: Мужской Реальное имя: Алексей Репутация: 20 |
Да я конешно дико извиняюсь за свою тупку,щас я уже разобрался почти во всем,откуда что берется,но тут возникла небольшая проблема.Варианты проверки статусов порта и линка работают коректно,а вот при попытке включения и отключения возникает такая ошибка 'pConnectionUI' используется без инициализации.Причем эта ошибка возникает как при включении так и при отключении.
Ошибка происходит в строке.
|
Текстовая версия | 19.04.2024 6:19 |