improve:ROT联动

This commit is contained in:
2026-02-14 15:10:00 +08:00
parent 698478d826
commit e0cb877162
2 changed files with 10 additions and 11 deletions
+6 -7
View File
@@ -221,11 +221,10 @@ namespace Ink_Canvas.Helpers
{ {
try try
{ {
if (!_isModuleUnloading) if (_disposed || _isModuleUnloading)
{ return;
CheckAndConnectToPPTViaRot(); CheckAndConnectToPPTViaRot();
} }
}
catch (Exception ex) catch (Exception ex)
{ {
LogHelper.WriteLogToFile($"[ROT] PPT 连接检查失败: {ex}", LogHelper.LogType.Error); LogHelper.WriteLogToFile($"[ROT] PPT 连接检查失败: {ex}", LogHelper.LogType.Error);
@@ -236,11 +235,10 @@ namespace Ink_Canvas.Helpers
{ {
try try
{ {
if (!_isModuleUnloading && IsConnected) if (_disposed || _isModuleUnloading || !IsConnected)
{ return;
CheckSlideShowState(); CheckSlideShowState();
} }
}
catch (Exception ex) catch (Exception ex)
{ {
LogHelper.WriteLogToFile($"[ROT] PPT 放映状态检查失败: {ex}", LogHelper.LogType.Error); LogHelper.WriteLogToFile($"[ROT] PPT 放映状态检查失败: {ex}", LogHelper.LogType.Error);
@@ -249,7 +247,7 @@ namespace Ink_Canvas.Helpers
private void CheckAndConnectToPPTViaRot() private void CheckAndConnectToPPTViaRot()
{ {
if (_isModuleUnloading) return; if (_disposed || _isModuleUnloading) return;
if (_pptApplication != null && !IsConnected) if (_pptApplication != null && !IsConnected)
{ {
@@ -457,6 +455,7 @@ namespace Ink_Canvas.Helpers
System.Threading.Thread.Sleep(200); System.Threading.Thread.Sleep(200);
_isModuleUnloading = false; _isModuleUnloading = false;
if (!_disposed)
_unifiedRotTimer?.Start(); _unifiedRotTimer?.Start();
} }
catch (Exception ex) catch (Exception ex)
+1 -1
View File
@@ -104,7 +104,7 @@ namespace Ink_Canvas
private const int SlideSwitchDebounceMs = 150; // 防抖延迟150毫秒 private const int SlideSwitchDebounceMs = 150; // 防抖延迟150毫秒
private DispatcherTimer _exitPPTModeAfterDisconnectTimer; private DispatcherTimer _exitPPTModeAfterDisconnectTimer;
private const int ExitPPTModeAfterDisconnectDelayMs = 800; private const int ExitPPTModeAfterDisconnectDelayMs = 1200;
#endregion #endregion
#region PPT Managers #region PPT Managers