Закрытие GPRS-подключений на Windows Mobile - PullRequest
2 голосов
/ 01 апреля 2009

Можно ли получить все открытые или кэшированные соединения gprs на Windows Mobile и программно заставить их закрыться?

Я смотрю на api диспетчера подключений, но, похоже, не могу найти способы, как это сделать.

Привет

Tony

1 Ответ

1 голос
/ 01 апреля 2009

Диспетчер соединений может быть уведомлен о том, что вы больше не используете соединение, позвонив по номеру ConnMgrReleaseConnection , но это принудительно не закрывает соединение. Оно закрывается на основании срока хранения, определенного в реестре (HKEY_LOCAL_MACHINE \ Comm \ ConnMgr \ Planner \ Settings), а также любой информации, переданной в запросе на выпуск. (Кстати, эти API обернуты в объекты OpenNETCF ConnectionManager в SDF ).

Единственный способ принудительно закрыть соединение - это использовать RAS , чтобы перечислить все соединения с устройством, найти то, что вы ищете, и закрыть его. Имейте в виду, что если вы сделаете это, ConnectionManager не будет знать, что он закрыт, поэтому он будет расстроен в следующий раз, когда попытается использовать это соединение. Как правило, он получает внутреннюю ошибку и пытается снова открыть новое соединение, и все хорошо, но YMMV.

...