RemoteTextConnection Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa uma conexão entre um aplicativo cliente da Área de Trabalho Remota e o sistema de entrada de texto do computador local. Essa conexão pode ser usada para habilitar a virtualização de entrada de texto.
public ref class RemoteTextConnection sealed : IClosable
/// [Windows.Foundation.Metadata.Activatable(Windows.System.RemoteDesktop.Input.IRemoteTextConnectionFactory, 851968, "Windows.Foundation.UniversalApiContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 851968)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class RemoteTextConnection final : IClosable
/// [Windows.Foundation.Metadata.Activatable(Windows.System.RemoteDesktop.Input.IRemoteTextConnectionFactory, 851968, "Windows.Foundation.UniversalApiContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 851968)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(Windows.System.RemoteDesktop.Input.IRemoteTextConnectionFactory2, 1048576, "Windows.Foundation.UniversalApiContract")]
class RemoteTextConnection final : IClosable
[Windows.Foundation.Metadata.Activatable(typeof(Windows.System.RemoteDesktop.Input.IRemoteTextConnectionFactory), 851968, "Windows.Foundation.UniversalApiContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 851968)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class RemoteTextConnection : System.IDisposable
[Windows.Foundation.Metadata.Activatable(typeof(Windows.System.RemoteDesktop.Input.IRemoteTextConnectionFactory), 851968, "Windows.Foundation.UniversalApiContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 851968)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(typeof(Windows.System.RemoteDesktop.Input.IRemoteTextConnectionFactory2), 1048576, "Windows.Foundation.UniversalApiContract")]
public sealed class RemoteTextConnection : System.IDisposable
function RemoteTextConnection(connectionId, pduForwarder)
function RemoteTextConnection(connectionId, pduForwarder, options)
Public NotInheritable Class RemoteTextConnection
Implements IDisposable
- Herança
- Atributos
- Implementações
Requisitos do Windows
Família de dispositivos |
Windows 11 (introduzida na 10.0.22000.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduzida na v14.0)
|
Comentários
RemoteTextConnection foi projetado para habilitar a virtualização de entrada de texto com aplicativos remotos integrados a uma área de trabalho local. Esse cenário é chamado programas remotos ou aplicativos remotos integrados localmente (RAIL). O uso RemoteTextConnection com comunicação remota de área de trabalho completa não é recomendado no momento e pode resultar em um comportamento indesejável. Quando a virtualização de entrada de texto está habilitada, métodos de entrada internos fornecidos pelo Windows (incluindo IMEs) podem ser usados para inserir texto em aplicativos remotos.
Para habilitar a virtualização de entrada de texto, um aplicativo cliente da Área de Trabalho Remota cria um objeto RemoteTextConnection para cada sessão remota à qual ele se conecta. Os pacotes de dados são entregues por meio desse objeto de e para o sistema de entrada de texto do computador local das seguintes maneiras:
O sistema de entrada de texto envia pacotes de dados para o aplicativo cliente da Área de Trabalho Remota por meio do delegado
RemoteTextConnectionDataHandler. O aplicativo cliente da Área de Trabalho Remota é responsável por criar esse delegado e passá-lo para o construtor RemoteTextConnection. Os pacotes de dados do sistema de entrada de texto estarão em conformidade com o protocolo de virtualização de entrada de texto RDP. As mensagens recebidas nesse delegado chegarão em um thread em segundo plano. Quando o aplicativo cliente recebe pacotes de dados do delegado, ele deve encaminhar os pacotes para o servidor RAIL remoto por meio do DVC (canal virtual dinâmico)unidirecional para o servidor para entrada de texto virtualizado. Esse DVC é denominado TextInput_ClientToServerDVC
.O aplicativo cliente da Área de Trabalho Remota também precisa escutar pacotes de dados do computador remoto no DVC de entrada de texto de servidor para cliente (denominado
) e encaminhar esses pacotes de dados para o sistema de entrada de texto do computador local por meio do método ReportDataReceived . Para obter mais informações sobre como os aplicativos cliente de Área de Trabalho Remota dão suporte a DVCs, consulte do DVC (Dynamic Virtual Channel) e o arquivo de cabeçalho tsvirtualchannels.h.
Os únicos métodos de entrada locais que
Construtores
RemoteTextConnection(Guid, RemoteTextConnectionDataHandler, RemoteTextConnectionOptions) |
Representa uma conexão entre um aplicativo cliente da Área de Trabalho Remota e o sistema de entrada de texto do computador local. Essa conexão pode ser usada para habilitar a virtualização de entrada de texto. |
RemoteTextConnection(Guid, RemoteTextConnectionDataHandler) |
Cria uma nova instância da classe RemoteTextConnection específica para uma sessão remota. |
Propriedades
IsEnabled |
Especifica se a virtualização de entrada de texto está habilitada para a conexão de Área de Trabalho Remota atendida por esta instância de RemoteTextConnection |
Métodos
Close() |
Fecha o objeto |
Dispose() |
Executa tarefas definidas pelo aplicativo associadas à liberação, liberação ou redefinição de recursos não gerenciados. |
RegisterThread(UInt32) |
Registra um thread no qual o aplicativo cliente da Área de Trabalho Remota apresentará a interface do usuário remota. |
ReportDataReceived(Byte[]) |
Encaminha um pacote de dados recebido pela do DVC (Canal Virtual Dinâmico) |
ReportPredictedKeyEvent(UInt16, RemoteKeyEventAttributes) |
Representa uma conexão entre um aplicativo cliente da Área de Trabalho Remota e o sistema de entrada de texto do computador local. Essa conexão pode ser usada para habilitar a virtualização de entrada de texto. |
UnregisterThread(UInt32) |
Cancela o registro de um thread registrado por meio de RegisterThread ao limpar ou quando esse thread não hospedará mais a interface do usuário remota. |
Aplica-se a
Confira também
- do DVC (Canal Virtual Dinâmico)