Registro de plug-in do DVC
O plug-in DVC (canal virtual dinâmico) é registrado para uso pelo cliente RDC (Conexão de Área de Trabalho Remota) usando um dos seguintes métodos:
Invocando o método IMsTscAdvancedSettings::p ut_PluginDlls do controle ActiveX do Protocolo rdp. Várias entradas devem ser separadas por vírgulas.
Gravando a entrada de plug-in no seguinte local no registro no computador em que o processo de cliente rdc (Conexão de Área de Trabalho Remota) é iniciado:
HKEY_CURRENT_USER\Software\Microsoft\Cliente do Servidor de\ Terminal Padrão\Addins\nome exclusivo do plug-in
Observação
Você deverá criar a subchave de nome do plug-in exclusivo se ela não existir. O nome exclusivo da subchave do nome do plug-in é uma cadeia de caracteres arbitrária que pode identificar o plug-in. A cadeia de caracteres pode ser qualquer combinação de caracteres.
Em nome exclusivo do plug-in, você deve adicionar uma entrada que identifique o plug-in.
Nome da entrada = Nome
Tipo de dados = REG_SZ ou REG_EXPAND_SZ
Em ambos os casos, o valor de entrada deve estar em conformidade com um dos seguintes formatos:
-
"Plug-inDLLName:{CLSID}"
-
O plug-in não é necessariamente registrado no registro do Windows como um objeto COM (Component Object Model), mas a DLL é implementada como um objeto COM em processo. O cliente RDC carregará a DLL especificada por Plug-inDLLName e recuperará o objeto COM diretamente usando CLSID.
-
"Plug-inDLLName"
-
A DLL implementa a função VirtualChannelGetInstance e a exporta por nome. O cliente RDC usará a função VirtualChannelGetInstance para obter ponteiros de interface IWTSPlugin para todos os plug-ins implementados pela DLL.
-
"{CLSID}"
-
O cliente RDC criará uma instância do plug-in como um objeto COM regular usando CoCreateInstance com o CLSID.
Observação
Plug-inDLLName representa o caminho completo e o nome do arquivo de .dll. Se o tipo de dados for REG_EXPAND_SZ, o caminho poderá conter variáveis de ambiente não expandidas que são expandidas em runtime.
Quando o cliente RDC (Conexão de Área de Trabalho Remota) concluir sua inicialização, ele executará o seguinte para cada plug-in registrado:
- Obtenha uma instância da interface IWTSPlugin para cada plug-in usando um dos métodos descritos acima.
- Chame o método Initialize de cada interface IWTSPlugin .
- Se o cliente se conectar várias vezes ao mesmo ou a um servidor diferente, poderá haver várias chamadas para os métodos Conectado e Desconectado .
- A última chamada que o plug-in deve manipular é Terminada. É um sinal de que o cliente RDC (Conexão de Área de Trabalho Remota) está prestes a descarregar o plug-in.