Закрытие GPRS-соединений на Windows Mobile
-
22-08-2019 - |
Вопрос
Можно ли получить все открытые или кэшированные соединения GPS на Windows Mobile и программно заставить их закрыться?
Я смотрел API диспетчера соединений, но не могу найти способы сделать это.
С уважением
Тони
Решение
Менеджер подключений можно получить уведомление о том, что вы больше не используете соединение, позвонив ConnMgrReleaseConnection, но это не закрывает соединение принудительно.Он закрывается на основе срока службы кэширования, определенного в реестре (HKEY_LOCAL_MACHINE\Comm\ConnMgr\Planner\Settings), а также любой информации, передаваемой в запросе на выпуск.(Кстати, эти API заключены в объекты OpenNETCF ConnectionManager в СДС).
Единственный способ принудительно закрыть соединение — использовать РАН чтобы перечислить все подключения устройств, найдите то, которое вам нужно, и закройте его.Имейте в виду, что если вы сделаете это, ConnectionManager не узнает, что он был закрыт, поэтому он будет расстроен в следующий раз, когда попытается использовать это соединение.Обычно он получает внутреннюю ошибку и пытается снова открыть новое соединение, и все в порядке, но YMMV.