| imho.ws |
![]() |
|
|
|
# 1 |
|
Advanced Member
Регистрация: 08.08.2002
Адрес: Nab. Chelny, Tatarstan
Сообщения: 447
![]() ![]() ![]() |
Программное вкл/выкл сетевого соединения
Случилась вот такая проблема - на серваке, который стоит в другом здании, изредка но все же зависает внутренняя сетевуха (смотрит во внутреннюю сеть). Если отключить и снова включить соединение то все работает.
Я хочу написать прогу которая по определенному сигналу отключала и включала это соединение. Вопрос КАК? (сигнал будет поступать от внешней сетевухи, благо она работает нормально)
__________________
-=Nomen est Omen=- |
|
|
|
|
# 4 |
|
Advanced Member
Регистрация: 08.08.2002
Адрес: Nab. Chelny, Tatarstan
Сообщения: 447
![]() ![]() ![]() |
упс а ось то и забыл написать. Ось - Win 2003 Server.
Drakosha Поподробней пожалуйста. Мне без разницы каким путем это реализовывать, главное чтобы всё это работало без вмешательства человека
__________________
-=Nomen est Omen=- |
|
|
|
|
# 6 |
|
Advanced Member
Регистрация: 08.08.2002
Адрес: Nab. Chelny, Tatarstan
Сообщения: 447
![]() ![]() ![]() |
dyr_farot
принцип включения/выключения? Есть же в виндах в систем_трее значок подключения сети.. вооот... мне надо как бы нажать на кнопку disable (если кликнуть по правой кнопке на иконке), а потом сразу Enable. Т.е сетевое подключение выключить и включить заново. Я подумал может есть в виндах какая-нить специальная функция по управлению подключениями... можно конечно попробовать найти handle пункта меню в систем трее и программно "кликнуть", но это как то не шибко красивое решение....
__________________
-=Nomen est Omen=- |
|
|
|
|
# 9 |
|
Full Member
Регистрация: 16.10.2002
Адрес: ArchLinux, Internet
Сообщения: 557
![]() ![]() ![]() ![]() |
к сожалению я не знаю какие комманды есть в cygwin, может кто скажет будет ли ето работать:
#! /bin/bash res=`ping google.com -c 1 -q -W 2 -w 2 | grep '1 packets transmitted, 1 received, 0% packet loss' | wc -l` #echo ">>> $res" if [ "$res" -eq "1" ] then echo OK else ifdown eth0; ifup eth0 fi from: http://imho.ws/showthread.php?t=47641&page=1&pp=20 |
|
|
|
|
# 10 |
|
Advanced Member
Регистрация: 23.08.2003
Сообщения: 442
![]() ![]() |
DWORD dwResult;
// Call the WNetCancelConnection2 function, specifying // that the connection should no longer be a persistent one. // dwResult = WNetCancelConnection2("z:", CONNECT_UPDATE_PROFILE, // remove connection from profile FALSE); // fail if open files or jobs // Process errors. // The device is not a local redirected device. // if (dwResult == ERROR_NOT_CONNECTED) { TextOut(hdc, 10, 10, "Drive z: not connected.", 23); return FALSE; } // Call an application-defined error handler. // else if(dwResult != NO_ERROR) { NetErrorHandler(hwnd, dwResult, (LPSTR)"WNetCancelConnection2"); return FALSE; } // // Otherwise, report canceling the connection. // TextOut(hdc, 10, 10, "Connection closed for z:.", 25); |
|
|