LB_VisionProcesses/Cameras/CameraConfig.cs
@@ -206,11 +206,23 @@ return Result; } if (Camera == null || Camera.SN != SN) { // 始终检查缓存的Camera对象是否与全局字典中的一致 // 防止相机被删除并重建后(SN相同), 仍然引用旧的已销毁对象 if (dicCameras.ContainsKey(SN)) Camera = dicCameras[SN]; { var currentCam = dicCameras[SN]; if (Camera != currentCam) { Camera = currentCam; // 如果切换了相机实例,且未开始采集,尝试开启采集 if (Camera != null && !Camera.isGrabbing) { try { Camera.StartGrabbing(); } catch { } } } } else { Camera = null; }