[GH-ISSUE #101] A Crash when A RDP to B, Then B RDP to A, #2964

Closed
opened 2026-03-13 00:30:14 +03:00 by kerem · 1 comment
Owner

Originally created by @xieyuqiang on GitHub (Mar 26, 2021).
Original GitHub issue: https://github.com/1Remote/1Remote/issues/101

Originally assigned to: @VShawn on GitHub.

Environment

PRemoteM Ver: 0.5.9.2102191952

OS: Windows 10 Enterprise 64-bits 10.0.19042.0 (2009)

.NET Framework: .NET Framework 4.8

CLR: 4.0.30319.42000

Error Info

无法访问已释放的对象。

对象名:“Timer”。

Stack Trace


   在 System.Timers.Timer.set_Enabled(Boolean value)

   在 System.Timers.Timer.Start()

   在 PRM.Core.Protocol.RDP.Host.AxMsRdpClient09Host._ResizeEnd_WindowSizeChanged(Object sender, SizeChangedEventArgs e)

   在 System.Windows.SizeChangedEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)

   在 System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)

   在 System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)

   在 System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)

   在 System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)

   在 System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)

   在 System.Windows.FrameworkElement.OnRenderSizeChanged(SizeChangedInfo sizeInfo)

   在 System.Windows.ContextLayoutManager.fireSizeChangedEvents()

   在 System.Windows.ContextLayoutManager.UpdateLayout()

   在 System.Windows.ContextLayoutManager.UpdateLayoutCallback(Object arg)

   在 System.Windows.Media.MediaContext.InvokeOnRenderCallback.DoWork()

   在 System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()

   在 System.Windows.Media.MediaContext.RenderMessageHandlerCore(Object resizedCompositionTarget)

   在 System.Windows.Media.MediaContext.RenderMessageHandler(Object resizedCompositionTarget)

   在 System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)

   在 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

Recent Log

2021-03-26T08:49:20.0483615+08:00[ThreadId:0000000001] Debug RDP Host: RdpOnOnLoginComplete

2021-03-26T08:50:10.6102512+08:00[ThreadId:0000000001] Debug Tab size change to:W = 2574.66666666667, H = 1554.66666666667, Child NaN, NaN

2021-03-26T08:50:11.6724001+08:00[ThreadId:0000000001] Debug Tab size change to:W = 2574.66666666667, H = 1614.66666666667, Child NaN, NaN

2021-03-26T08:50:12.0281964+08:00[ThreadId:0000000001] Debug Resolution Changed: System.EventArgs

2021-03-26T08:50:14.0070533+08:00[ThreadId:0000000001] Debug Tab size change to:W = 214.666666666667, H = 214.666666666667, Child NaN, NaN

2021-03-26T08:50:15.1074186+08:00[ThreadId:0000000001] Debug Resolution Changed: System.EventArgs

2021-03-26T08:50:15.1284069+08:00[ThreadId:0000000001] Debug Resolution Changed: System.EventArgs

2021-03-26T08:50:15.5791469+08:00[ThreadId:0000000001] Debug Tab size change to:W = 808.666666666667, H = 540, Child NaN, NaN

2021-03-26T08:50:17.9440050+08:00[ThreadId:0000000001] Debug Tab size change to:W = 808.666666666667, H = 500, Child NaN, NaN

2021-03-26T08:50:36.8737386+08:00[ThreadId:0000000001] Debug RDP Host: _rdp.Dispose()

2021-03-26T08:50:36.8917287+08:00[ThreadId:0000000001] Debug DelTabWindow tab(2960312)

2021-03-26T08:50:36.9007235+08:00[ThreadId:0000000001] Debug ProtocolHosts.Count = 1, FullWin.Count = 1, _tabWindows.Count = 1

2021-03-26T08:50:36.9107165+08:00[ThreadId:0000000001] Debug Close tab(2960312)

2021-03-26T08:50:36.9217104+08:00[ThreadId:0000000001] Debug ProtocolHosts.Count = 1, FullWin.Count = 1, _tabWindows.Count = 0

2021-03-26T08:50:44.1610397+08:00[ThreadId:0000000001] Debug Resolution Changed: System.EventArgs

2021-03-26T08:50:47.9433555+08:00[ThreadId:0000000001] Debug Resolution Changed: System.EventArgs

2021-03-26T08:50:49.9798732+08:00[ThreadId:0000000001] Debug Resolution Changed: System.EventArgs

2021-03-26T09:25:49.1467186+08:00[ThreadId:0000000011] Debug Check update.

2021-03-26T09:25:54.2192554+08:00[ThreadId:0000000011] Warning System.Net.WebException: 操作超时

在 System.Net.HttpWebRequest.GetResponse()

在 HttpHelper.Get(String url, Encoding encoding)

在 PRM.Core.Utils.UpdateChecker.CheckUpdate(String url, String ignoreVersion)

在 System.Net.HttpWebRequest.GetResponse()

在 HttpHelper.Get(String url, Encoding encoding)

在 PRM.Core.Utils.UpdateChecker.CheckUpdate(String url, String ignoreVersion)

2021-03-26T09:25:59.2747677+08:00[ThreadId:0000000011] Warning System.Net.WebException: 操作超时

在 System.Net.HttpWebRequest.GetResponse()

在 HttpHelper.Get(String url, Encoding encoding)

在 PRM.Core.Utils.UpdateChecker.CheckUpdate(String url, String ignoreVersion)

在 System.Net.HttpWebRequest.GetResponse()

在 HttpHelper.Get(String url, Encoding encoding)

在 PRM.Core.Utils.UpdateChecker.CheckUpdate(String url, String ignoreVersion)

2021-03-26T10:25:49.1924504+08:00[ThreadId:0000000007] Debug Check update.

2021-03-26T11:08:48.5413372+08:00[ThreadId:0000000001] Fatal System.ObjectDisposedException: 无法访问已释放的对象。

对象名:“Timer”。

在 System.Timers.Timer.set_Enabled(Boolean value)

在 System.Timers.Timer.Start()

在 PRM.Core.Protocol.RDP.Host.AxMsRdpClient09Host._ResizeEnd_WindowSizeChanged(Object sender, SizeChangedEventArgs e)

在 System.Windows.SizeChangedEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)

在 System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)

在 System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)

在 System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)

在 System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)

在 System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)

在 System.Windows.FrameworkElement.OnRenderSizeChanged(SizeChangedInfo sizeInfo)

在 System.Windows.ContextLayoutManager.fireSizeChangedEvents()

在 System.Windows.ContextLayoutManager.UpdateLayout()

在 System.Windows.ContextLayoutManager.UpdateLayoutCallback(Object arg)

在 System.Windows.Media.MediaContext.InvokeOnRenderCallback.DoWork()

在 System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()

在 System.Windows.Media.MediaContext.RenderMessageHandlerCore(Object resizedCompositionTarget)

在 System.Windows.Media.MediaContext.RenderMessageHandler(Object resizedCompositionTarget)

在 System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)

在 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

在 System.Timers.Timer.set_Enabled(Boolean value)

在 System.Timers.Timer.Start()

在 PRM.Core.Protocol.RDP.Host.AxMsRdpClient09Host._ResizeEnd_WindowSizeChanged(Object sender, SizeChangedEventArgs e)

在 System.Windows.SizeChangedEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)

在 System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)

在 System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)

在 System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)

在 System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)

在 System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)

在 System.Windows.FrameworkElement.OnRenderSizeChanged(SizeChangedInfo sizeInfo)

在 System.Windows.ContextLayoutManager.fireSizeChangedEvents()

在 System.Windows.ContextLayoutManager.UpdateLayout()

在 System.Windows.ContextLayoutManager.UpdateLayoutCallback(Object arg)

在 System.Windows.Media.MediaContext.InvokeOnRenderCallback.DoWork()

在 System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()

在 System.Windows.Media.MediaContext.RenderMessageHandlerCore(Object resizedCompositionTarget)

在 System.Windows.Media.MediaContext.RenderMessageHandler(Object resizedCompositionTarget)

在 System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)

在 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

Originally created by @xieyuqiang on GitHub (Mar 26, 2021). Original GitHub issue: https://github.com/1Remote/1Remote/issues/101 Originally assigned to: @VShawn on GitHub. ## Environment PRemoteM Ver: `0.5.9.2102191952` OS: `Windows 10 Enterprise 64-bits 10.0.19042.0 (2009)` .NET Framework: `.NET Framework 4.8` CLR: `4.0.30319.42000` ## Error Info 无法访问已释放的对象。 对象名:“Timer”。 ## Stack Trace ``` 在 System.Timers.Timer.set_Enabled(Boolean value) 在 System.Timers.Timer.Start() 在 PRM.Core.Protocol.RDP.Host.AxMsRdpClient09Host._ResizeEnd_WindowSizeChanged(Object sender, SizeChangedEventArgs e) 在 System.Windows.SizeChangedEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget) 在 System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target) 在 System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs) 在 System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised) 在 System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args) 在 System.Windows.UIElement.RaiseEvent(RoutedEventArgs e) 在 System.Windows.FrameworkElement.OnRenderSizeChanged(SizeChangedInfo sizeInfo) 在 System.Windows.ContextLayoutManager.fireSizeChangedEvents() 在 System.Windows.ContextLayoutManager.UpdateLayout() 在 System.Windows.ContextLayoutManager.UpdateLayoutCallback(Object arg) 在 System.Windows.Media.MediaContext.InvokeOnRenderCallback.DoWork() 在 System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks() 在 System.Windows.Media.MediaContext.RenderMessageHandlerCore(Object resizedCompositionTarget) 在 System.Windows.Media.MediaContext.RenderMessageHandler(Object resizedCompositionTarget) 在 System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs) 在 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler) ``` ## Recent Log 2021-03-26T08:49:20.0483615+08:00[ThreadId:0000000001] <font color=Green>Debug</font> RDP Host: RdpOnOnLoginComplete 2021-03-26T08:50:10.6102512+08:00[ThreadId:0000000001] <font color=Green>Debug</font> Tab size change to:W = 2574.66666666667, H = 1554.66666666667, Child NaN, NaN 2021-03-26T08:50:11.6724001+08:00[ThreadId:0000000001] <font color=Green>Debug</font> Tab size change to:W = 2574.66666666667, H = 1614.66666666667, Child NaN, NaN 2021-03-26T08:50:12.0281964+08:00[ThreadId:0000000001] <font color=Green>Debug</font> Resolution Changed: System.EventArgs 2021-03-26T08:50:14.0070533+08:00[ThreadId:0000000001] <font color=Green>Debug</font> Tab size change to:W = 214.666666666667, H = 214.666666666667, Child NaN, NaN 2021-03-26T08:50:15.1074186+08:00[ThreadId:0000000001] <font color=Green>Debug</font> Resolution Changed: System.EventArgs 2021-03-26T08:50:15.1284069+08:00[ThreadId:0000000001] <font color=Green>Debug</font> Resolution Changed: System.EventArgs 2021-03-26T08:50:15.5791469+08:00[ThreadId:0000000001] <font color=Green>Debug</font> Tab size change to:W = 808.666666666667, H = 540, Child NaN, NaN 2021-03-26T08:50:17.9440050+08:00[ThreadId:0000000001] <font color=Green>Debug</font> Tab size change to:W = 808.666666666667, H = 500, Child NaN, NaN 2021-03-26T08:50:36.8737386+08:00[ThreadId:0000000001] <font color=Green>Debug</font> RDP Host: _rdp.Dispose() 2021-03-26T08:50:36.8917287+08:00[ThreadId:0000000001] <font color=Green>Debug</font> DelTabWindow tab(2960312) 2021-03-26T08:50:36.9007235+08:00[ThreadId:0000000001] <font color=Green>Debug</font> ProtocolHosts.Count = 1, FullWin.Count = 1, _tabWindows.Count = 1 2021-03-26T08:50:36.9107165+08:00[ThreadId:0000000001] <font color=Green>Debug</font> Close tab(2960312) 2021-03-26T08:50:36.9217104+08:00[ThreadId:0000000001] <font color=Green>Debug</font> ProtocolHosts.Count = 1, FullWin.Count = 1, _tabWindows.Count = 0 2021-03-26T08:50:44.1610397+08:00[ThreadId:0000000001] <font color=Green>Debug</font> Resolution Changed: System.EventArgs 2021-03-26T08:50:47.9433555+08:00[ThreadId:0000000001] <font color=Green>Debug</font> Resolution Changed: System.EventArgs 2021-03-26T08:50:49.9798732+08:00[ThreadId:0000000001] <font color=Green>Debug</font> Resolution Changed: System.EventArgs 2021-03-26T09:25:49.1467186+08:00[ThreadId:0000000011] <font color=Green>Debug</font> Check update. 2021-03-26T09:25:54.2192554+08:00[ThreadId:0000000011] <font color=Yellow>Warning</font> System.Net.WebException: 操作超时 在 System.Net.HttpWebRequest.GetResponse() 在 HttpHelper.Get(String url, Encoding encoding) 在 PRM.Core.Utils.UpdateChecker.CheckUpdate(String url, String ignoreVersion) 在 System.Net.HttpWebRequest.GetResponse() 在 HttpHelper.Get(String url, Encoding encoding) 在 PRM.Core.Utils.UpdateChecker.CheckUpdate(String url, String ignoreVersion) 2021-03-26T09:25:59.2747677+08:00[ThreadId:0000000011] <font color=Yellow>Warning</font> System.Net.WebException: 操作超时 在 System.Net.HttpWebRequest.GetResponse() 在 HttpHelper.Get(String url, Encoding encoding) 在 PRM.Core.Utils.UpdateChecker.CheckUpdate(String url, String ignoreVersion) 在 System.Net.HttpWebRequest.GetResponse() 在 HttpHelper.Get(String url, Encoding encoding) 在 PRM.Core.Utils.UpdateChecker.CheckUpdate(String url, String ignoreVersion) 2021-03-26T10:25:49.1924504+08:00[ThreadId:0000000007] <font color=Green>Debug</font> Check update. 2021-03-26T11:08:48.5413372+08:00[ThreadId:0000000001] <u>**<font color=Red>Fatal</font>**</u> System.ObjectDisposedException: 无法访问已释放的对象。 对象名:“Timer”。 在 System.Timers.Timer.set_Enabled(Boolean value) 在 System.Timers.Timer.Start() 在 PRM.Core.Protocol.RDP.Host.AxMsRdpClient09Host._ResizeEnd_WindowSizeChanged(Object sender, SizeChangedEventArgs e) 在 System.Windows.SizeChangedEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget) 在 System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target) 在 System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs) 在 System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised) 在 System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args) 在 System.Windows.UIElement.RaiseEvent(RoutedEventArgs e) 在 System.Windows.FrameworkElement.OnRenderSizeChanged(SizeChangedInfo sizeInfo) 在 System.Windows.ContextLayoutManager.fireSizeChangedEvents() 在 System.Windows.ContextLayoutManager.UpdateLayout() 在 System.Windows.ContextLayoutManager.UpdateLayoutCallback(Object arg) 在 System.Windows.Media.MediaContext.InvokeOnRenderCallback.DoWork() 在 System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks() 在 System.Windows.Media.MediaContext.RenderMessageHandlerCore(Object resizedCompositionTarget) 在 System.Windows.Media.MediaContext.RenderMessageHandler(Object resizedCompositionTarget) 在 System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs) 在 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler) 在 System.Timers.Timer.set_Enabled(Boolean value) 在 System.Timers.Timer.Start() 在 PRM.Core.Protocol.RDP.Host.AxMsRdpClient09Host._ResizeEnd_WindowSizeChanged(Object sender, SizeChangedEventArgs e) 在 System.Windows.SizeChangedEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget) 在 System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target) 在 System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs) 在 System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised) 在 System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args) 在 System.Windows.UIElement.RaiseEvent(RoutedEventArgs e) 在 System.Windows.FrameworkElement.OnRenderSizeChanged(SizeChangedInfo sizeInfo) 在 System.Windows.ContextLayoutManager.fireSizeChangedEvents() 在 System.Windows.ContextLayoutManager.UpdateLayout() 在 System.Windows.ContextLayoutManager.UpdateLayoutCallback(Object arg) 在 System.Windows.Media.MediaContext.InvokeOnRenderCallback.DoWork() 在 System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks() 在 System.Windows.Media.MediaContext.RenderMessageHandlerCore(Object resizedCompositionTarget) 在 System.Windows.Media.MediaContext.RenderMessageHandler(Object resizedCompositionTarget) 在 System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs) 在 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
kerem 2026-03-13 00:30:14 +03:00
Author
Owner

@VShawn commented on GitHub (Mar 26, 2021):

@xieyuqiang

您好,虽然您这个是很诡异的远程方法,但 timer 的问题我好像在 0.5.10 中修复了,能否帮我试一下呢?

0.5.10 下载:
0.5.10beta.zip

<!-- gh-comment-id:808063462 --> @VShawn commented on GitHub (Mar 26, 2021): @xieyuqiang 您好,虽然您这个是很诡异的远程方法,但 timer 的问题我好像在 0.5.10 中修复了,能否帮我试一下呢? 0.5.10 下载: [0.5.10beta.zip](https://github.com/VShawn/PRemoteM/files/6205521/0.5.10beta.zip)
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/1Remote#2964
No description provided.