Поделиться через


Регистрация подключаемого модуля DVC

Подключаемый модуль динамического виртуального канала (DVC) зарегистрирован для использования клиентом подключения к удаленному рабочему столу (RDC) с помощью одного из следующих методов:

  • Вызов метода IMsTscAdvancedSettings::p ut_PluginDlls элемента activeX протокола удаленного рабочего стола (RDP). Несколько записей должны быть разделены запятыми.

  • Запись подключаемого модуля в следующее расположение в реестре на компьютере, на котором запущен клиентский процесс подключения к удаленному рабочему столу (RDC):

    HKEY_CURRENT_USER\Программное обеспечение\Microsoft\Терминал server client\Default\AddIns\уникальное имя подключаемого модуля

    Заметка

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

     

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

    Имя записи = имени

    Тип данных = REG_SZ или REG_EXPAND_SZ

В обоих случаях значение записи должно соответствовать одному из следующих форматов:

"Plug-inDLLName:{CLSID}"

Подключаемый модуль не обязательно регистрируется в реестре Windows в качестве объекта COM-модели компонента, но библиотека DLL реализуется как объект COM процесса. Клиент RDC загружает библиотеку DLL, указанную Plug-inDLLName, и извлекает объект COM непосредственно с помощью CLSID.

"Plug-inDLLName"

Библиотека DLL реализует функцию VirtualChannelGetInstance и экспортирует ее по имени. Клиент RDC будет использовать функцию VirtualChannelGetInstance для получения указателей интерфейса IWTSPlugin для всех подключаемых модулей, реализованных библиотекой DLL.

"{CLSID}"

Клиент RDC создаст экземпляр подключаемого модуля как обычный COM-объект с помощью CoCreateInstance с CLSID.

Заметка

Plug-inDLLName представляет полный путь и имя файла .dll. Если тип данных REG_EXPAND_SZ, путь может содержать необъяснимые переменные среды, развернутые во время выполнения.

 

Когда клиент подключения к удаленному рабочему столу завершит инициализацию, он выполнит следующие действия для каждого зарегистрированного подключаемого модуля:

  1. Получите экземпляр интерфейсаIWTSPlugin для каждого подключаемого модуля с помощью одного из описанных выше методов.
  2. Вызовите метод Initialize каждого интерфейса IWTSPlu gin.
  3. Если клиент подключается несколько раз к одному или другому серверу, может быть несколько вызовов подключенных и отключенных методов.
  4. Последний вызов, который должен обрабатывать подключаемый модуль, завершен. Это сигнал о том, что клиент подключения к удаленному рабочему столу (RDC) будет выгрузить подключаемый модуль.