protected virtual void Dispose(bool disposing) { if (_disposed) { return; } if (disposing && Initialized) { try { CameraWrapper.Dispose(); } catch (Exception e) { Console.WriteLine("EDSDK shutdown error: " + e); } PipeWriter.Dispose(); PipeClient.Dispose(); } _disposed = true; }