Remote desktop protocol and control
Managed RDP Client
Treat a remote Windows desktop as another inspectable, automatable target surface.
Explore source ↗Capability
The RDP lane keeps protocol, security, rendering, hosting, and automation separable, allowing the remote desktop surface to participate in visual tests without hiding its transport boundary.
- 01
Managed RDP negotiation and session state
- 02
TLS and CredSSP security transports
- 03
Static and dynamic virtual channels
- 04
Avalonia control, input mapping, and Skia frame rendering
How it composes
From intent
to working system.
Connect
Negotiation, security, licensing, activation, and session state establish the remote desktop.
Channel
Static and dynamic virtual channels carry negotiated capabilities and auxiliary data.
Present
Bitmap updates and dirty regions compose into an Avalonia-hosted Skia framebuffer.
Drive
Pointer and keyboard mapping feeds remote input while CDP workflows record and verify the surface.
Quick start
Adopt this
capability.
Start with the primary module, then add the related packages only when the application needs those layers. Replace VERSION with the current NuGet version.
dotnet add package Chrome.DevTools.Avalonia.Rdp --prerelease<PackageReference Include="Chrome.DevTools.Rdp" Version="VERSION" /><PackageVersion Include="Chrome.DevTools.Rdp" Version="VERSION" />var client = new RdpClient(new RdpSessionOptions{ Host = "windows-vm", Port = 3389});
await client.ConnectAsync(cancellationToken);Modules in this capability
Use one layer.
Compose the rest.
Source of truth
Read the module beside the complete system.
The implementation, samples, issues, and release notes stay in the parent repository so module details remain connected to the product architecture.