Очистка незанятого соединения Windows RCP

#c #windows #rcp

#c #Windows #rcp

Вопрос:

У меня есть приложение, созданное на RCP (сервер на Windows xp embedded), и сеансы клиента хранятся на стороне сервера в качестве бизнес-объектов.

Глядя на:http://msdn.microsoft.com/en-us/library/windows/desktop/aa373939(v=vs.85).aspx Я вижу , что существует встроенный механизм для очистки неработающего соединения . Есть ли способ настроить функцию обратного вызова, которая будет вызываться при закрытии незанятых подключений?

Ответ №1:

Чтобы ответить на мой собственный вопрос, чтобы определить, когда соединение закрывается, я должен создать контекст клиента на стороне сервера где-нибудь при открытии клиентского сеанса, и когда соединение прерывается / теряется, вызывается процедура запуска контекста сервера .

Например, PCONTEXT_HANDLE_TYPE_rundown , где PCONTEXT_HANDLE_TYPE может быть типом вашего определенного контекста, если это сложная структура данных. Метод использует соглашение об именах для краткого изложения любого количества контекстов , созданных TYPE1_rundown , TYPE2_rundown .. и т.д. Более подробная информация доступна здесь:

Клиент: http://msdn.microsoft.com/en-us/library/windows/desktop/aa373581(v=vs.85).aspx

Сервер: http://msdn.microsoft.com/en-us/library/windows/desktop/aa378673(v=vs.85).aspx