2010-02-18 5 views
0

Мне нужно перечислить и закрыть отдельные подключения GPRS на устройстве Windows Mobile.Перечислить активные соединения GPRS на Windows Mobile

Я пробовал API RAS, как предложено this answer, однако он не работает на всех устройствах. RasEnumConnections на устройстве HTC делает список GPRS-сессий, но на Samsung это не так.

У Samsung есть приложение с графическим интерфейсом с этой функциональностью - он очень часто использует ossvcs.dll, но функции, которые он использует, экспортируются только по порядковым номерам, поэтому я понятия не имею, что это такое!

Я также рассмотрел API диспетчера соединений, но он не позволяет вам перечислять существующие соединения.

Больше идей? Есть ли API, который я пропустил?

ответ

0

Перечислительные и закрывающие соединения намеренно трудны. Общая идея заключается в том, что приложение не должно принудительно завершать соединения, которые не принадлежат ему, потому что это очень недобросовестно. Предполагается, что приложения, использующие соединение, готовы к тому, что это соединение вырвалось из-под них, и это неверное предположение.

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

RAS был обходным путем/взломом для доступа к этим соединениям, но он устарел, поэтому OEM-производители не должны использовать RAS для управления соединениями, и похоже, что Samsung не использует его. Вместо этого они решили реализовать свою собственную проприетарную реализацию.

Единственный способ осуществления этой реализации - это использовать собственный API-интерфейс, и это не похоже, что они публикуют его, поэтому вам придется перепроектировать его. Даже тогда это будет специфично для их устройства и хрупкое, поскольку оно может измениться в разных версиях.

Мой совет - переосмыслить необходимость отключения всех соединений на устройстве.

Смежные вопросы