imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Компьютеры > Программирование
Опции темы
Старый 13.08.2004, 16:56     # 1
ReapeR
Advanced Member
 
Аватар для ReapeR
 
Регистрация: 08.08.2002
Адрес: Nab. Chelny, Tatarstan
Сообщения: 447

ReapeR МолодецReapeR МолодецReapeR Молодец
Программное вкл/выкл сетевого соединения

Случилась вот такая проблема - на серваке, который стоит в другом здании, изредка но все же зависает внутренняя сетевуха (смотрит во внутреннюю сеть). Если отключить и снова включить соединение то все работает.
Я хочу написать прогу которая по определенному сигналу отключала и включала это соединение. Вопрос КАК?
(сигнал будет поступать от внешней сетевухи, благо она работает нормально)
__________________
-=Nomen est Omen=-
ReapeR вне форума  
Старый 19.08.2004, 20:29     # 2
dyr_farot
Advanced Member
 
Регистрация: 23.08.2003
Сообщения: 442

dyr_farot Нимб уже пробиваетсяdyr_farot Нимб уже пробивается
для начала неплохо бы ось сервака написать потом принцип включения/выключения а там и думать можно
dyr_farot вне форума  
Старый 20.08.2004, 11:14     # 3
Drakosha
Full Member
 
Аватар для Drakosha
 
Регистрация: 16.10.2002
Адрес: ArchLinux, Internet
Сообщения: 557

Drakosha Реально крут(а)Drakosha Реально крут(а)Drakosha Реально крут(а)Drakosha Реально крут(а)
а может просче написать скрипт на сервере который будет проверять работает ли сетевуха (например пингом куда нибудь) и перезапускать если надо и поставить его в cron?
Drakosha вне форума  
Старый 20.08.2004, 14:39     # 4
ReapeR
Advanced Member
 
Аватар для ReapeR
 
Регистрация: 08.08.2002
Адрес: Nab. Chelny, Tatarstan
Сообщения: 447

ReapeR МолодецReapeR МолодецReapeR Молодец
упс а ось то и забыл написать. Ось - Win 2003 Server.

Drakosha
Поподробней пожалуйста. Мне без разницы каким путем это реализовывать, главное чтобы всё это работало без вмешательства человека
__________________
-=Nomen est Omen=-
ReapeR вне форума  
Старый 20.08.2004, 20:03     # 5
dyr_farot
Advanced Member
 
Регистрация: 23.08.2003
Сообщения: 442

dyr_farot Нимб уже пробиваетсяdyr_farot Нимб уже пробивается
прочитай еще раз мое сообщение
dyr_farot вне форума  
Старый 20.08.2004, 20:51     # 6
ReapeR
Advanced Member
 
Аватар для ReapeR
 
Регистрация: 08.08.2002
Адрес: Nab. Chelny, Tatarstan
Сообщения: 447

ReapeR МолодецReapeR МолодецReapeR Молодец
dyr_farot
принцип включения/выключения?
Есть же в виндах в систем_трее значок подключения сети.. вооот... мне надо как бы нажать на кнопку disable (если кликнуть по правой кнопке на иконке), а потом сразу Enable. Т.е сетевое подключение выключить и включить заново. Я подумал может есть в виндах какая-нить специальная функция по управлению подключениями...
можно конечно попробовать найти handle пункта меню в систем трее и программно "кликнуть", но это как то не шибко красивое решение....
__________________
-=Nomen est Omen=-
ReapeR вне форума  
Старый 21.08.2004, 01:04     # 7
Drakosha
Full Member
 
Аватар для Drakosha
 
Регистрация: 16.10.2002
Адрес: ArchLinux, Internet
Сообщения: 557

Drakosha Реально крут(а)Drakosha Реально крут(а)Drakosha Реально крут(а)Drakosha Реально крут(а)
хм... на юнихе ето легко... может стоит cygwin установить и на нем ето сделать?
Drakosha вне форума  
Старый 21.08.2004, 12:31     # 8
ReapeR
Advanced Member
 
Аватар для ReapeR
 
Регистрация: 08.08.2002
Адрес: Nab. Chelny, Tatarstan
Сообщения: 447

ReapeR МолодецReapeR МолодецReapeR Молодец
Drakosha
как? я в юниксах не шарю совсем, если пример напишешь буду рад
__________________
-=Nomen est Omen=-
ReapeR вне форума  
Старый 21.08.2004, 13:24     # 9
Drakosha
Full Member
 
Аватар для Drakosha
 
Регистрация: 16.10.2002
Адрес: ArchLinux, Internet
Сообщения: 557

Drakosha Реально крут(а)Drakosha Реально крут(а)Drakosha Реально крут(а)Drakosha Реально крут(а)
к сожалению я не знаю какие комманды есть в 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
Drakosha вне форума  
Старый 21.08.2004, 14:10     # 10
dyr_farot
Advanced Member
 
Регистрация: 23.08.2003
Сообщения: 442

dyr_farot Нимб уже пробиваетсяdyr_farot Нимб уже пробивается
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);
dyr_farot вне форума  
Старый 25.08.2004, 14:52     # 11
ReapeR
Advanced Member
 
Аватар для ReapeR
 
Регистрация: 08.08.2002
Адрес: Nab. Chelny, Tatarstan
Сообщения: 447

ReapeR МолодецReapeR МолодецReapeR Молодец
dyr_farot
это я так понял для расшаренных ресурсов, а мне надо для "Local Area Connection" и иже с ними
__________________
-=Nomen est Omen=-
ReapeR вне форума  

Опции темы

Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 09:16.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.