Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.14;
Скачать: CL | DM;

Вниз

Как оследить обрыв сети?   Найти похожие ветки 

 
WondeRu ©   (2004-09-07 09:47) [0]

Здравствуйте!
Винда отлавливает обрыв локальной сети мгновенно (показывает balloon message)!
Мое приложение работает с удаленной БД.
Как в своем приложении поставить хук на обрыв сети?
Спасибо!


 
Digitman ©   (2004-09-07 10:27) [1]

и что ты будешь делать в теле этого хука ?


 
Verg ©   (2004-09-07 10:50) [2]

Если говорить о сети TCP/IP, то отключение сетевого адаптера немедленно приводит к изменению в маршрутной таблице, разрыву всех установленных через этот интерфейс TCP соединений.
Изменение в маршрутной таблице можно отслеживать ф-цией
function NotifyRouteChange( Handle : PHandle; Overlapped : POverlapped):DWORD; stdcall; external "IPHLPAPI.DLL";
После наступления изменения просмотреть все адаптеры ф-цией
function   GetIfTable(pIfTable : PMIB_IFTABLE; var pdwSize : ULONG; bOrder : BOOL): DWORD; stdcall;external "IPHLPAPI.DLL";
Отключенный адаптер будет иметь состояние
dwOperStatus <> MIB_IF_OPER_STATUS_OPERATIONAL (5)
или
dwAdminStatus <> MIB_IF_ADMIN_STATUS_UP (1)

Только это все полумеры, т.к. связь с сервером БД так же может оборваться из-за множества других причин, а результат один - СУБД не работает.


 
WondeRu ©   (2004-09-07 11:28) [3]

Digitman ©   (07.09.04 10:27) [1]
и что ты будешь делать в теле этого хука ?

запрет на SQL запросы!

Verg ©   (07.09.04 10:50) [2]
связь с сервером БД так же может оборваться из-за множества других причин

знаю, но это (обрыв сети) у нас основная причина всех бед

Всем спасибо!


 
Digitman ©   (2004-09-07 11:38) [4]


> WondeRu ©   (07.09.04 11:28) [3]
> запрет на SQL запросы!


гм.. и для этого нужно лезть в дебри каких-то там "хуков" ?
достаточно просто грамотно обрабатывать ошибки/исключения клиентской части


 
Reindeer Moss Eater ©   (2004-09-07 11:59) [5]

запрет на SQL запросы!

А без твоего строгого запрета они могут уйти на сервер?
При обрыве сети.


 
Карелин Артем ©   (2004-09-07 15:42) [6]

WondeRu ©   (07.09.04 11:28) [3]
А если сеть есть, а вот сервер БД отвалился? Или маршрутизатор не пущает до сервера пакеты?


 
WondeRu ©   (2004-09-08 11:25) [7]

Reindeer Moss Eater ©   (07.09.04 11:59) [5]
А без твоего строгого запрета они могут уйти на сервер?

)))
они могут уйти в локальный файл!

Карелин Артем ©   (07.09.04 15:42) [6]
А если сеть есть, а вот сервер БД отвалился? Или маршрутизатор не пущает до сервера пакеты?

всяко бывает)


 
Digitman ©   (2004-09-08 11:38) [8]


> они могут уйти в локальный файл


это как ?



Страницы: 1 вся ветка

Текущий архив: 2004.11.14;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.039 c
1-1099036871
zorik
2004-10-29 12:01
2004.11.14
TSaveDialog FileExt


3-1097640948
diabolik_krsk
2004-10-13 08:15
2004.11.14
Создание ADOConnection во время прогона программы


14-1098600944
Stef
2004-10-24 10:55
2004.11.14
Какое то маленькое окошко со списком имен


1-1099412841
Владимир
2004-11-02 19:27
2004.11.14
Восстановление окон


3-1097649858
AlexG
2004-10-13 10:44
2004.11.14
Подключение к БД в потоке