Использование вспомогательного API для клиентов (connect.h)
API определен в заголовочном файле sysroot-*-kos/include/coresrv/dcm/helpers/connect.h из состава KasperskyOS SDK.
API позволяет клиентам выполнять запросы на создание IPC-каналов с серверами для использования служб с заданными интерфейсами. Для выполнения запроса достаточно вызвать функции DcmConnectAny() или DcmConnectAnyEx(), в то время как при использовании базового API dcm_api.h для этого требуется выполнить последовательность вызовов: DcmSubscribeToEndpoints(), DcmReadPubQueue(), DcmCreateConnection(), DcmConnectToEndpoint().
Перед вызовом функции DcmConnectAny() или DcmConnectAnyEx() нужно создать подключение к DCM вызовом функции DcmInit() из базового API dcm_api.h.
В результате вызова функции DcmConnectAny() или DcmConnectAnyEx() клиент получает через параметр outSessionHandle callable-дескриптор для использования службы.
Вызов функции DcmConnectAny() соответствует вызову функции DcmConnectAnyEx(), при котором параметры endpointName и serverName имеют значение RTL_NULL, параметры serverHandle и clientHandle имеют значение INVALID_HANDLE, параметры findTimeout и connectTimeout имеют значение INFINITE_TIMEOUT.
Сведения о функциях API приведены в таблице ниже.
Функции connect.h
Функция | Сведения о функции |
|---|---|
| Назначение Выполняет запрос на создание IPC-канала с сервером для использования службы с заданным интерфейсом. Параметры
Возвращаемые значения В случае успеха возвращает |
| Назначение Выполняет запрос на создание IPC-канала с сервером для использования службы с заданным интерфейсом. Параметры
Возвращаемые значения В случае успеха возвращает Если в параметре Если сервер отклонил запрос вызовом функции Дополнительные сведения Неблокирующий вызов, если в параметрах |