RDM 2026.3.2.0 - Crash when starting RDP session

RDM 2026.3.2.0 - Crash when starting RDP session

avatar

RDM 2026.2.18.0 works fine
RDM 2026.3.2.0 crashes when trying to establish a RDP connection to a remote host.

Crash summary: RDM crashes with an unhandled exception while instantiating the RDP ActiveX COM control (RdpActiveXSession.CreateComInstance), triggered when the user double-clicks a connection entry to open an embedded RDP session. The exception happens during Avalonia's native control host attachment (layout/measure pass), not during actual RDP protocol negotiation - so this fails before any connection is even attempted.

Here is the record from the application event log - event 1026 .NET Runtime:

Application: RemoteDesktopManager.exe
CoreCLR Version: 10.0.1126.37416
.NET Version: 10.0.11
Description: The process was terminated due to an unhandled exception.
Stack:
at Devolutions.MsRdpEx.Avalonia.RdpActiveXSession.CreateComInstance(IntPtr, System.Guid)
at Devolutions.MsRdpEx.Avalonia.RdpActiveXSession+<>c__DisplayClass78_0.<Start>b__0()
at Devolutions.MsRdpEx.Avalonia.RdpActiveXSession.WithAxNameEnvironment[[System.IntPtr, System.Private.CoreLib, Version=10.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](System.String, System.Func`1<IntPtr>)
at Devolutions.MsRdpEx.Avalonia.RdpActiveXSession.Start(IntPtr, Int32, Int32, System.Guid, System.String, System.String)
at Devolutions.MsRdpEx.Avalonia.RdpClientView.StartSession(IntPtr)
at Devolutions.MsRdpEx.Avalonia.RdpClientView.CreateNativeControlCore(Avalonia.Platform.IPlatformHandle)
at Avalonia.Controls.NativeControlHost.<UpdateHost>b__18_0(Avalonia.Platform.IPlatformHandle)
at Avalonia.Win32.Win32NativeControlHost.CreateNewAttachment(System.Func`2<Avalonia.Platform.IPlatformHandle,Avalonia.Platform.IPlatformHandle>)
at Avalonia.Controls.NativeControlHost.UpdateHost()
at Devolutions.MsRdpEx.Avalonia.RdpClientView.OnAttachedToVisualTree(Avalonia.VisualTreeAttachmentEventArgs)
at Avalonia.Visual.OnAttachedToVisualTreeCore(Avalonia.VisualTreeAttachmentEventArgs)
at Avalonia.Controls.Control.OnAttachedToVisualTreeCore(Avalonia.VisualTreeAttachmentEventArgs)
at Avalonia.Visual.SetVisualParent(Avalonia.Visual)
at Avalonia.Visual.SetVisualParent(System.Collections.IList, Avalonia.Visual)
at Avalonia.Collections.AvaloniaList`1[[System.__Canon, System.Private.CoreLib, Version=10.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].Add(System.__Canon)
at Avalonia.Controls.Presenters.ContentPresenter.UpdateChild(System.Object)
at Avalonia.Controls.Presenters.ContentPresenter.ApplyTemplate()
at Avalonia.Layout.Layoutable.MeasureCore(Avalonia.Size)
at Avalonia.Layout.Layoutable.Measure(Avalonia.Size)
at Avalonia.Layout.Layoutable.MeasureOverride(Avalonia.Size)
at Avalonia.Layout.Layoutable.MeasureCore(Avalonia.Size)
at Avalonia.Layout.Layoutable.Measure(Avalonia.Size)
at Avalonia.Controls.Grid.MeasureCell(Int32, Boolean)
at Avalonia.Controls.Grid.MeasureCellsGroup(Int32, Boolean, Boolean, Boolean ByRef)
at Avalonia.Controls.Grid.MeasureOverride(Avalonia.Size)
at Avalonia.Layout.Layoutable.MeasureCore(Avalonia.Size)
at Avalonia.Layout.Layoutable.Measure(Avalonia.Size)
at Avalonia.Controls.Presenters.ContentPresenter.MeasureOverride(Avalonia.Size)
at Avalonia.Layout.Layoutable.MeasureCore(Avalonia.Size)
at Avalonia.Layout.Layoutable.Measure(Avalonia.Size)
at Avalonia.Layout.Layoutable.MeasureOverride(Avalonia.Size)
at Avalonia.Layout.Layoutable.MeasureCore(Avalonia.Size)
at Avalonia.Layout.Layoutable.Measure(Avalonia.Size)
at Avalonia.Controls.Border.MeasureOverride(Avalonia.Size)
at Avalonia.Layout.Layoutable.MeasureCore(Avalonia.Size)
at Avalonia.Layout.Layoutable.Measure(Avalonia.Size)
at Avalonia.Controls.Presenters.ContentPresenter.MeasureOverride(Avalonia.Size)
at Avalonia.Layout.Layoutable.MeasureCore(Avalonia.Size)
at Avalonia.Layout.Layoutable.Measure(Avalonia.Size)
at Avalonia.Controls.Border.MeasureOverride(Avalonia.Size)
at Avalonia.Layout.Layoutable.MeasureCore(Avalonia.Size)
at Avalonia.Layout.Layoutable.Measure(Avalonia.Size)
at Avalonia.Layout.Layoutable.MeasureOverride(Avalonia.Size)
at Avalonia.Layout.Layoutable.MeasureCore(Avalonia.Size)
at Avalonia.Layout.Layoutable.Measure(Avalonia.Size)
at Avalonia.Controls.Presenters.ContentPresenter.MeasureOverride(Avalonia.Size)
at Avalonia.Layout.Layoutable.MeasureCore(Avalonia.Size)
at Avalonia.Layout.Layoutable.Measure(Avalonia.Size)
at Avalonia.Layout.LayoutManager.Measure(Avalonia.Layout.Layoutable)
at Avalonia.Layout.LayoutManager.ExecuteMeasurePass()
at Avalonia.Layout.LayoutManager.InnerLayoutPass()
at Avalonia.Layout.LayoutManager.ExecuteLayoutPass()
at Devolutions.AvaloniaUI.Docking.DockingHostView.SynchronizeSelection()
at Devolutions.AvaloniaUI.Docking.DockingHostView.SynchronizeActiveDocument()
at Devolutions.RemoteDesktopManager.AvaloniaUI.ViewModels.Docking.DockingHostViewModel.Workspace_OnDocumentActivated(System.Object, Devolutions.RemoteDesktopManager.Forms.SessionDocumentEventArgs)
at Devolutions.RemoteDesktopManager.Forms.SessionDocumentWorkspace.Add(Devolutions.RemoteDesktopManager.Managers.IFormConnectionContainer, Int32)
at Devolutions.RemoteDesktopManager.Forms.FrmMainDocumentManager.AddDocument(Devolutions.RemoteDesktopManager.Managers.IFormConnectionContainer, System.String, Devolutions.RemoteDesktopManager.Business.OpenConnectionParameter)
at Devolutions.RemoteDesktopManager.Managers.EmbeddedViewManager.OpenEmbedded(Devolutions.RemoteDesktopManager.Managers.ConnectionEngine, Devolutions.RemoteDesktopManager.Frames.Embedded.IEmbeddedSession, Devolutions.RemoteDesktopManager.Business.Connection, Boolean, Devolutions.RemoteDesktopManager.Business.OpenConnectionParameter, System.Drawing.Image, System.Drawing.Image, System.String, System.Nullable`1<Devolutions.Images.ImagePaletteType>, System.String)
at Devolutions.RemoteDesktopManager.Managers.EmbeddedViewManager.Open(Devolutions.RemoteDesktopManager.Managers.ConnectionEngine, Devolutions.RemoteDesktopManager.Business.Connection, Devolutions.RemoteDesktopManager.Frames.Embedded.IEmbeddedSession, Boolean, Devolutions.RemoteDesktopManager.Business.OpenConnectionParameter, Boolean, System.Drawing.Image, System.Drawing.Image, System.String, System.Nullable`1<Devolutions.Images.ImagePaletteType>, System.String)
at Devolutions.RemoteDesktopManager.Business.Connectors.EmbeddedConnector.Connect(Devolutions.RemoteDesktopManager.Business.Connection, Devolutions.RemoteDesktopManager.Business.OpenConnectionParameter)
at Devolutions.RemoteDesktopManager.Managers.ConnectionManager.OpenConnection(Devolutions.RemoteDesktopManager.Managers.ConnectionEngine, Devolutions.RemoteDesktopManager.Business.Connection, Devolutions.RemoteDesktopManager.Business.OpenConnectionParameter)
at Devolutions.RemoteDesktopManager.Managers.ConnectionManager.OpenConnections(Devolutions.RemoteDesktopManager.Managers.ConnectionCollection, Devolutions.RemoteDesktopManager.Business.OpenConnectionParameter, Boolean)
at Devolutions.RemoteDesktopManager.Managers.ActionManager.DoOpenConnection(Devolutions.RemoteDesktopManager.Managers.ConnectionCollection, Devolutions.RemoteDesktopManager.Business.OpenConnectionParameter, Devolutions.RemoteDesktopManager.IConnectionSource)
at Devolutions.RemoteDesktopManager.Managers.ActionManager.OpenOrExecuteConnections(Devolutions.RemoteDesktopManager.Managers.ConnectionEngine, Devolutions.RemoteDesktopManager.Business.Connection[], Devolutions.RemoteDesktopManager.OpenConnectionMode, Devolutions.RemoteDesktopManager.IConnectionSource, Boolean)
at Devolutions.RemoteDesktopManager.Frames.NavigationPaneController.InvokeConnectionTreeEntryAction(Devolutions.RemoteDesktopManager.AvaloniaUI.ViewModels.ConnectionTreeViewNodeViewModel)
at Devolutions.AvaloniaUI.Controls.SelectableTreeView.OnTreeDoubleTapped(System.Object, Avalonia.Input.TappedEventArgs)
at Avalonia.Interactivity.EventRoute.RaiseEventImpl(Avalonia.Interactivity.RoutedEventArgs)
at Avalonia.Interactivity.EventRoute.RaiseEvent(Avalonia.Interactivity.Interactive, Avalonia.Interactivity.RoutedEventArgs)
at Avalonia.Interactivity.Interactive.RaiseEvent(Avalonia.Interactivity.RoutedEventArgs)
at Avalonia.Input.Gestures.PointerPressed(Avalonia.Interactivity.RoutedEventArgs)
at Avalonia.Reactive.LightweightObservableBase`1[[System.__Canon, System.Private.CoreLib, Version=10.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].PublishNext(System.__Canon)
at Avalonia.Interactivity.EventRoute.RaiseEvent(Avalonia.Interactivity.Interactive, Avalonia.Interactivity.RoutedEventArgs)
at Avalonia.Interactivity.Interactive.RaiseEvent(Avalonia.Interactivity.RoutedEventArgs)
at Avalonia.Input.MouseDevice.MouseDown(Avalonia.Input.IMouseDevice, UInt64, Avalonia.Input.IInputRoot, Avalonia.Point, Avalonia.Input.PointerPointProperties, Avalonia.Input.KeyModifiers, Avalonia.Input.IInputElement, System.Object)
at Avalonia.Input.MouseDevice.ProcessRawEvent(Avalonia.Input.Raw.RawPointerEventArgs)
at Avalonia.Threading.Dispatcher.Send(System.Threading.SendOrPostCallback, System.Object, System.Nullable`1<Avalonia.Threading.DispatcherPriority>)
at Avalonia.Controls.PresentationSource.HandleInput(Avalonia.Input.Raw.RawInputEventArgs)
at Avalonia.Win32.WindowImpl.AppWndProc(IntPtr, UInt32, IntPtr, IntPtr)
at Avalonia.Win32.WindowImpl.WndProcMessageHandler(IntPtr, UInt32, IntPtr, IntPtr)
at Windows.Win32.PInvokeCore.CallWindowProc(Windows.Win32.Foundation.LRESULT (Windows.Win32.Foundation.HWND, UInt32, Windows.Win32.Foundation.WPARAM, Windows.Win32.Foundation.LPARAM), Windows.Win32.Foundation.HWND, UInt32, Windows.Win32.Foundation.WPARAM, Windows.Win32.Foundation.LPARAM)
at Windows.Win32.PInvokeCore.CallWindowProc(Windows.Win32.Foundation.LRESULT (Windows.Win32.Foundation.HWND, UInt32, Windows.Win32.Foundation.WPARAM, Windows.Win32.Foundation.LPARAM), Windows.Win32.Foundation.HWND, UInt32, Windows.Win32.Foundation.WPARAM, Windows.Win32.Foundation.LPARAM)
at System.Windows.Forms.NativeWindow.DefWndProc(System.Windows.Forms.Message ByRef)
at System.Windows.Forms.NativeWindow.Callback(Windows.Win32.Foundation.HWND, UInt32, Windows.Win32.Foundation.WPARAM, Windows.Win32.Foundation.LPARAM)
at Windows.Win32.PInvoke.DispatchMessage(Windows.Win32.UI.WindowsAndMessaging.MSG*)
at System.Windows.Forms.Application+LightThreadContext.FPushMessageLoop(Microsoft.Office.msoloop)
at System.Windows.Forms.Application+LightThreadContext.RunMessageLoop(Microsoft.Office.msoloop, Boolean)
at System.Windows.Forms.Application+ThreadContext.RunMessageLoopInner(Microsoft.Office.msoloop, System.Windows.Forms.ApplicationContext)
at System.Windows.Forms.Application.Run(System.Windows.Forms.Form)
at Devolutions.RemoteDesktopManager.Program.RunApplication(System.String[])
at Devolutions.RemoteDesktopManager.Program.Main(System.String[])

All Comments (4)

avatar

Hello,

We created a ticket for this bug and will keep you updated on any progress.

Best Regards,

Michaël Beaudin

avatar

Thank you, much appreciated.

avatar

Hello,

Could you please share with me more details about your environment, for example what version of windows are you running RDM on? Can you export me the RDP connection in question and send me a direct message with the (.rdm) file so that I can inspect and try all the same settings (when you export please select to ignore credentials)? I will try to reproduce the issue and fix it asap.

Thanks,

Paul Dumais

avatar

Hello,

Could you also send us the MsRdpEx log files, this will help us debug and fix the problem, here is the way to get the logs:

RDP session troubleshooting | Devolutions RDM | Product guides & reference

Thanks,
Paul