![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Отключение от сети [D7, WinXP]
Lera © (2007-02-06 13:38:00)Скажите пож-та, как отловить момент отключения компа от информационной сети? Спасибо.
YurikGL (2007-02-06 22:34:00) [1]Автору
Глянь здесь
http://itby.ru/content/view/3086/40/
Подозреваю, что искомая информация содержится в строчках
IInfo.INFO[i].IsUP := (ifr.ifru_flags and IFF_UP) = IFF_UP;
IInfo.INFO[i].IsRun := (ifr.ifru_flags and IFF_RUNNING) = IFF_RUNNING;
Johnmen (2007-02-06 21:50:00) [2]
> Ну видно что человек совсем сырой в этом деле, со своими
> "информационными" сетями там... Ну задал нелепый вопрос
> характерный для новичка, зачем вы так к нему?
Ну ты ему ответил доступно. Он сразу всё понял.
Вот и молчит, видимо функцию вызывает неизвестно откуда. Т.е. конечно же ему известно, он сразу догадался, что это связано с мсдн. Он же новичек, а они очень и очень всезнающи и всепонимающи...
> Есть желание помочь - помогай!
А если есть желание показать свою крутость, то подскажи так, чтобы все были в недоумении. Это плохо?
ancara (2007-02-06 21:49:00) [3]Я, кстати, только что понял, что автор - девушка :)... Но это сути не меняет, давайте будем практичней? Воспитывать их будут другие люди в других местах, а тут: задал вопрос - получил ответ. Не получил - пошел гуглить. Можно воспитывать не давая ответов, но форум же не для этого... Ладно, это уже совсем оффтоп, если уж говорить об этом, то в "прочее"...
iXT (2007-02-06 21:36:00) [4]
> Ну автор в защитниках не нуждается, если ему будет что-
> то непонятно, он спросит. Это во-первых. Во-вторых такие
> "конструкции": MIB_IF_OPER_STATUS_DISCONNECTED могли уже
> навести на мысль о мсдн, а можно и переспросить опять же.
На автора посмотри :)
> Ну чтоб не глумились над новичками, помните?
Покажите ГДЕ???
З.Ы. С автора только попросили сказать зачем ей, и это не спроса. Она молчит.
ancara (2007-02-06 21:00:00) [5]
> Ага, а автор телепатор должет включать.
Ну автор в защитниках не нуждается, если ему будет что-то непонятно, он спросит. Это во-первых. Во-вторых такие "конструкции": MIB_IF_OPER_STATUS_DISCONNECTED могли уже навести на мысль о мсдн, а можно и переспросить опять же.
И, наконец, в-третьих, я согласен с тем, что указать, откуда эта функция, было бы не лишним.
В-четвертых будет офтопик. Ребята, вам действительно происходящее кажется нормальным? Насколько я помню не раз обсуждалось тема о непростой ситуации на форуме, особенно в "Начинающим", даже конкурсы на самое "лояльное поведение" или как там это называлось? Ну чтоб не глумились над новичками, помните? И опять все по новой... Ну видно что человек совсем сырой в этом деле, со своими "информационными" сетями там... Ну задал нелепый вопрос характерный для новичка, зачем вы так к нему? Есть желание помочь - помогай! А раз нет, к чему эти 25 постов ни о чем? Ладно про пинги еще вроде близко, но остальное... "А зачем тебе это?" Ну какая разница зачем? Надо и все тут! Молодость у него, может тяга к познаниям и экспериментам! Это плохо?
iXT (2007-02-06 20:31:00) [6]
> вызываем из Iphlpapi.dll
Ага, а автор телепатор должет включать.
ancara (2007-02-06 20:27:00) [7]
> Чё за функция? Ты написал?
>
У тебя вопросов больше чем у автора, гыг:))
Про функцию читаем тут: http://msdn2.microsoft.com/en-us/library/aa365943.aspx
вызываем из Iphlpapi.dll, чтоб проще было вызывать, идем в гугл и просим у него Iphlpapi.pas, их есть у него :)
Johnmen (2007-02-06 19:51:00) [8]
> ancara © (06.02.07 18:21) [26]
Чё за функция? Ты написал?
ancara (2007-02-06 18:21:00) [9]
> как отловить момент отключения компа от информационной сети
> Другими словами выдергивание сетевого шнура из компа
Если нужно именно это, то можно поступить следующим образом:
зовем функцию GetIfTable, получаем табличку интерфейсов,
среди них ищем нужный (не знаю уж по каким критериям, ну можно тупо по имени, это певрое поле в структуре MIB_IFROW)
Затем, смотрим на поле dwOperStatus:
оно может содержать следующие значения (это не все! там еще есть :) ):
MIB_IF_OPER_STATUS_DISCONNECTED сетевой кабель не подключен (то что надо)
MIB_IF_OPER_STATUS_OPERATIONAL а это обычное состояние, когда все тип-топ, каг говориццо :)
Таким образом момент отключения настанет после того как статус перестанед быдь _OPERATIONAL и до того как он станед _DISCONNECTED :))
iXT (2007-02-06 16:26:00) [10]О всемогущи ваши админы
> Desdechado © (06.02.07 16:19) [23]
Ну вобщем шнюрок, на кустике чертополоха :)
Elen (2007-02-06 16:24:00) [11]
> Desdechado
Гм Гм. Если я хочу узнать например смогу ли прочитать файл или в него записать на комп в сети (Хост он же хвост :)) то мне проше пинговать его.
Есть у нас умники, которые простым движением отключают сеть.Так вот для одной сторонней проги нужно чтоб сеть была подключена иначе она виснет. Пришлось написать надстройку, которая пингует наш сервер (локальный) и если пинг проходит следовательно с сервером связаться прога может, а стало быть и заработает. Отсюда и исхожу что для компа если есть пинг то и выход в локалку-сеть возможен.
Desdechado (2007-02-06 16:19:00) [12]2 Elen
О каких х востах ты все время говоришь? И какая может быть связь с хвостом?
Elen (2007-02-06 16:09:00) [13]
> в сети означает, что сети нет.
Не сети, а связи с этим компом. И в рамках задачи пинговать нужно от хвоста...
Elen (2007-02-06 16:08:00) [14]
> Ес-но, еще он может послать куда подальше того кто пингует,
> в смысле промолчать :)
>
Это если пинговать хвост. А если от хвоста? и кстати за промолчать наши админы могут руки поотшибать.
Johnmen (2007-02-06 16:06:00) [15]
> > А я считаю, что это означает лишь то, что этот любой комп
> > просто выключен.
> Не факт.
Да я уже понял, что лично для вас невозможность достучаться до к.-л. компа в сети означает, что сети нет.
iXT (2007-02-06 16:04:00) [16]
> Не факт.
Ес-но, еще он может послать куда подальше того кто пингует, в смысле промолчать :)
Elen (2007-02-06 15:51:00) [17]
> А я считаю, что это означает лишь то, что этот любой комп
> просто выключен.
Не факт.
Johnmen (2007-02-06 15:50:00) [18]
> Elen © (06.02.07 15:45) [16]
> Ну хватит прикалываться.
> Если пинг к любому компу в локалке не проходит то можно
> считать что локальная сеть на этом хвосте отсутствует как
> таковая, я например иногда так проверяю есть ли выход в
> локалку или нет.
А я считаю, что это означает лишь то, что этот любой комп просто выключен.
И причём тут комп автора?
Elen (2007-02-06 15:45:00) [19]
> Johnmen © (06.02.07 15:43) [15]
Ну хватит прикалываться. Если пинг к любому компу в локалке не проходит то можно считать что локальная сеть на этом хвосте отсутствует как таковая, я например иногда так проверяю есть ли выход в локалку или нет.
Johnmen (2007-02-06 15:43:00) [20]
> Elen © (06.02.07 15:33) [13]
> Если такого нет то нет связи у хвоста :)
Связи с кем? И какой? Родственной, любовной али тайной?