|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
13.02.2016, 20:37 | #1 |
Регистрация: 13.02.2016
Сообщений: 4
|
Отслеживание статуса сетевого адаптера
Добрый день!
Хотелось бы узнать, бродкастятся ли какие-либо wm_сообщения при изменении статуса сетевого адаптера? В частности, линка, изменения IP-адреса (либо что-то ещё)? Базовая задача: узнать о том, что произошло подключение/отключение к/от WiFi-сети (WinCE 6.0), для вывода соответствующего уведомления. Вероятно (ещё не пробовал), узнать статус адаптера можно с помощью GetAdaptersInfo, но не хотелось бы выполнять постоянный опрос по таймеру. |
13.02.2016, 23:09 | #2 | |
Форумчанин
Регистрация: 23.01.2016
Сообщений: 608
|
https://msdn.microsoft.com/en-us/library/ms882519.aspx
Впрочем, сама ОС эти изменения отображает в содержимом ключа 'Wi-Fi' ветки реестра 'HKEY_LOCAL_MACHINE\System\State\Ha rdware'. Цитата:
|
|
13.02.2016, 23:39 | #3 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,493
|
Какой таймер?
https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx |
14.02.2016, 00:16 | #4 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
но если что это от висты и выше.
а то еще бывает народ на хрюше. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
14.02.2016, 00:54 | #5 |
Регистрация: 13.02.2016
Сообщений: 4
|
Спасибо всем ответившим.
Пишу на Лазарусе, посмотрел юнит IP-Helper'а - а там всего две функции. Завтра выковыряю дллку из прошивки устройства и посмотрю на наличие экспортируемой NotifyIpInterfaceChange. UPD. Выковырял. Нету Есть NotifyAddr и NotifyRoute. Попробую с Addr повозиться, хотя там и Overlapped структура требуется, а ей ещё и CreateEvent надо... По реестру - данные адаптера в WinCE формируются в [HKLM\Comm\Имя_адаптера]. Для начала всё-таки попробую чтение реестра по таймеру, так значительно проще. Или лучше GetAdaptersInfo использовать? Последний раз редактировалось CrazyDron; 14.02.2016 в 01:13. |
14.02.2016, 10:59 | #6 |
Форумчанин
Регистрация: 23.01.2016
Сообщений: 608
|
GetAdaptersInfo - структура, а в чем вы ее будете читать и по какому событию - лично ваше дело.
|
14.02.2016, 11:39 | #7 |
Регистрация: 13.02.2016
Сообщений: 4
|
|
14.02.2016, 11:56 | #8 |
Форумчанин
Регистрация: 23.01.2016
Сообщений: 608
|
...оно и там и там в конечном итоге отображается.
|
14.02.2016, 12:07 | #9 |
Регистрация: 13.02.2016
Сообщений: 4
|
Это понятно, но меня интересует также и скорость, и потребление ОЗУ (возможные утечки памяти при создании/освобождении объектов). Железка дохлая - в частности, ОЗУ - 128 Мб, и бОльшая его часть должна быть доступна под навипрограммы.
С реестром понятно - создал объект TRegistry и читаю, допустим, раз в 5 сек нужную ветку. А вот насчёт объекта IP-Helper я не в курсе... |
14.02.2016, 13:00 | #10 |
Форумчанин
Регистрация: 23.01.2016
Сообщений: 608
|
...утечки памяти зависят только от прямоты ваших рук, а за каллбэк на NotifyIpInterfaceChange() вам выше уже намекали.
|
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Выставить метрику у сетевого адаптера | Человек_Борща | Общие вопросы Delphi | 3 | 02.06.2013 14:44 |
Загрузка сетевого адаптера | rakro | C# (си шарп) | 1 | 13.12.2012 12:49 |
изменение настроек сетевого адаптера. программное вкл. и выкл. | Рустам | Работа с сетью в Delphi | 3 | 12.10.2012 10:23 |
Отключение и выключение Wi-Fi адаптера | Light Alloy | Win Api | 1 | 09.10.2009 21:05 |