Как создать управляющую кнопку в C++ на роутер

graf123
11/1/2008, 8:52:37 PM
Как сделать кнопку а точнее написать программу для ребута (перезагрузки) роутера…
Вопрос об изменения IP адреса на двух машинах (компьютерах)… есть один способ но он механический, это включение и выключение самого модема…
Пробовал читать форумы и ориентировался Microsoft Visual C++ 6.0 т.к. с ним начинаю только учиться и изучать его…


Слышал что можно
записать ссылку из конфига модема по которой его можно отправить на реконнект ))) и запускать ее )))
либо найти в телнете команду на реконнект

но пока очень долёк от этого….
Операционная система Виста


******Спасибо за благовременный ответ*******



по сути строка самого процесса выглядет так
https://192.168.1.1 -setup - stream - disconnect - connect
DELETED
11/2/2008, 2:18:59 AM
:)

Раскройте тему https://x.x.x.x -setup - stream - disconnect - connect. Это по какому протоколу и интерфейсу?
graf123
11/2/2008, 8:00:52 PM
мммм... сложно обьяснить+)))))
но программа должна ссылаться по этим строчкам (покрайне мере, этот путь можно увидеть от загрузски старницы сайта модема до кнопки ребута)...
может там как то подругому расписано...
в любом случае у кого есть модемы Зулекс или есчо какие либо, то програмное обеспечение впринципе такоеже....
Чуть пойже как разберусь , я выложу более точную информацию...
graf123
11/2/2008, 8:18:49 PM
по прооколу, ты имееш виду , как именно?)))


протокол пппое



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

скринimage
DELETED
11/3/2008, 4:14:25 PM
Понятно. Ща освобожусь - сделаю.
graf123
11/4/2008, 5:01:44 AM
спасибо за помощь...
буду ждать...
graf123
11/10/2008, 9:19:33 PM
кнопка для смены IP находиться в меню роутера Advanced Setup>Wan>Столбец Action> нажимаете кнопку Down(отключение) потом на Up(подключение) появиться на том же месте, все IP поменялся.
(у меня Стрим, у других провайдеров VPI и VCI наверное будут другими)
(https://192.168.1.1/wancfg.cmd?ifname=ppp_1_50_10)-реконект, (https://192.168.1.1/wancfg.cmd?ifname=ppp_1_50_10)-конект.
пояснение к адресу: (https://адрес роутера/wancfg.cmd?ifname=ppp_Con. ID_VCI_VPI(0-реконект, 1-конект)).
чтобы это все было на в автомате (в usd или других программах), можно создать .exe файл с помощью какого нибудь планировщика например Xstarter-a(https://www.xstarter.com/rus/index.html?from_prog1.9.0) который все бы это делал автоматически не открывая окно в браузере и не загружая страницы на компьютер, и добавить в планировщик качалки.
Если параллельно с интернетом, подключено Стрим-ТВ оно не разъединиться.
P.S. не забудьте добавить несколько сек. ожидания после реконекта (в скрипте), а то качалка может зайти в цикл!

________________________________________________________________



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


но вопрос заключаеться ещё кое в чём, методым тыка хочу и изготовить сам эту кнопку, ну а если поможете то это ваще великолепно...
суть заключаеться в том что какой символ стватиться при http...
как бы обьяснить)))))...
есть например (я непомню как это назвать или обьяснить)..
ну например:
printf(" пример") - в скобках и ковычках мы пишем ту информацию какую нам нужно..
есть system("explorer.exe");
а для http чтопишеться?
т.е.

обозначение("http...")?


+++
Спасибо за внимание



DELETED
11/10/2008, 9:30:43 PM
Блин. Из головы вылетело.
Краткий курс запроса к веб-серверу.

CODE if(HINTERNET hInternet = InternetOpen(_T("Client"), INTERNET_OPEN_TYPE_PRECONFIG, NULL, NULL, 0)) {
 if(HINTERNET hConnection = InternetConnect(hInternet, TEXT("192.168.1.1"), INTERNET_DEFAULT_HTTP_PORT, NULL, NULL, INTERNET_SERVICE_HTTP, 0, 1)) {
  if(HINTERNET hRequest = HttpOpenRequest(hConnection, TEXT("GET"), TEXT("/wancfg.cmd?ifname=ppp_1_50_10"),NULL, NULL, 0, INTERNET_FLAG_KEEP_CONNECTION, 1)) {
   if(HttpSendRequest(hRequest, NULL, 0, NULL, 0)) {
    if(InternetReadFile(hRequest, szBuffer, dwBuffer, &dwBytesReaded) && dwBytesReaded ) {
    }
   }
   InternetCloseHandle(hRequest);
  }
  InternetCloseHandle(hConnection);
 }
 InternetCloseHandle(hInternet);
}
graf123
11/10/2008, 9:32:04 PM
https://192.168.1.1/wancfg.cmd?ifname=ppp_1_50_10
под этой командой посылаемой просто по адресной строке ...инет отрубаеться...



_____________________________
JeyLo
боюсь очень долго соображать))) но как оформить весь оператор через exe?и то что бы он включилс и выключился и периуд между включением и выключением был около 10 секунд.. ( ну что бы IP адреса успели обнулиться и не повториться )
DELETED
11/11/2008, 1:16:43 PM
Какой тип авторизации на роутере?
graf123
11/12/2008, 4:52:57 AM
мммм...
ты емееш ввиду само подключение..

эмм..
высокоскростное подключение через пппое через дсл или кабель, с предьявлениием пароля и логаина... но в режиме модема роутера пароли вносяться в роутор, т.е. при включение компьютера ты сразу бкз всяких подключениях можеш приступить к работе
DELETED
11/12/2008, 4:17:40 PM
Тип авторизации в консоли управления. Формой, basic, etc.
Есть ли подключение через telnet?
graf123
11/13/2008, 3:15:07 AM
JeyLo


...
сложно дать ответ, немного запутался..Что ты имееш ввиду
-"Тип авторизации в консоли управления. Формой, basic, etc."...
это ты про что ?




А подключение через Telnet был.. но на XP, на висте немогу подключиться...
либо может чтото не то делаю...
DELETED
11/16/2008, 12:22:04 AM
Отдельное спасибо за "ты".
RTFM.
Чего-то у меня упало все на ответы в этот топик.


P.S. Панель управления -> Программы -> Включение или отключение компонентов Windows -> Клиент Telnet. И будет счастье.
graf123
11/17/2008, 3:05:55 AM
JeyLo

спасибо работает телнет
DELETED
11/17/2008, 10:10:23 PM
Ну раз работает, то вот Вам пример:

(sample_script.vbs)set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "cmd" ' консоль
WScript.Sleep 100
WshShell.AppActivate "C:\Windows\system32\cmd.exe" ' активация консоли
WScript.Sleep 100
WshShell.SendKeys "telnet 192.168.1.1 1002{ENTER}"  ' открытие соединения
WScript.Sleep 100
WshShell.SendKeys "username{ENTER}" ' имя
WshShell.SendKeys "password{ENTER}" ' пароль
WScript.Sleep 100
WshShell.SendKeys "QUIT{ENTER}"
WScript.Sleep 200
WshShell.SendKeys "exit{ENTER}"  ' выход из телнета
WScript.Sleep 200
WshShell.SendKeys "exit{ENTER}" 'выход из консоли

Ну и почитайте на досуге основы C++, программирования и ОС. Так. Для общего образования.