Skip to content

Releases: drpetersonfernandes/BatchConvertIsoToXiso

release_2.3.1

15 Apr 15:42

Choose a tag to compare

  • Update Microsoft.Extensions.DependencyInjection to 10.0.6
  • Remove unused TextOptions from App.xaml
  • Fix a bug during application launch

release_2.3.0

14 Apr 02:03

Choose a tag to compare

  • Add fallback-safe font families (Segoe UI, Arial, etc.) and terminal fonts for better rendering on Windows, Wine/Proton, and Linux.
  • Enhance error handling for font/rendering issues with detailed diagnostics and user guidance.
  • Update SharpCompress package.
  • Improve exception reporting with environment details.

release_2.2.0

04 Apr 04:12

Choose a tag to compare

  • Add a helper method to detect when output drives or network paths become unavailable. When such errors occur, the batch operation is now stopped immediately rather than continuing to process files that cannot be written.
  • Improves error detection by checking specific HRESULT codes.
  • Adds Czech translation support for device not ready errors.
  • Batch operations will now stop immediately on fatal environmental errors instead of marking files as failed and continuing.
  • Implement IsDiskSpaceError check to stop batch processing when the  output drive is full.
  • Improve the bug reports.
  • Update SharpCompress dependency to version 0.47.3.

release_2.1.2

17 Mar 18:15

Choose a tag to compare

1. New Features & Improvements

  • Disk Space Verification: Added a CheckDiskSpace method that calculates the total size of an archive's contents and verifies if the destination drive has sufficient free space before starting the extraction.
  • Extraction Metadata: The logs now display the total size of the files to be extracted alongside the file count and archive format.
  • Dependency Update: Updated the SharpCompress library from version 0.47.0 to 0.47.1.

2. Enhanced Error Handling

  • Specific Archive Exceptions: Added dedicated catch blocks for ArchiveException and ArchiveOperationException. This provides users with clearer feedback if an archive is corrupt, invalid, or in an unsupported format.
  • Disk Space Alerts: Improved the reporting of "not enough space" errors, providing a user-friendly message suggesting the user free up space rather than showing a generic IO error.
  • Refined Bug Reporting Filters: Updated the exception filtering logic to ensure that environmental issues (like low disk space) and archive-specific errors (like corruption or invalid passwords) are handled gracefully and not flagged as application bugs.

3. Code Cleanup

  • Simplified the extraction loop by pre-filtering entries to exclude directories.
  • Added necessary imports (SharpCompress.Common) to support new exception types.

release_2.1.1

14 Mar 21:43

Choose a tag to compare

  • Resource Management: External conversion processes now run with BelowNormal priority to ensure the system remains responsive during heavy tasks.
  • UI Stability: The logging service now automatically truncates long logs to prevent the interface from freezing.
  • Cancellation Handling: New logic ensures that if a conversion is canceled, any partially created files are automatically deleted to prevent data clutter.
  • Asynchronous Improvements: Conversion operations are now explicitly wrapped in background tasks to keep the UI fluid.

release_2.1.0

14 Mar 20:40

Choose a tag to compare

🚀 UI Overhaul & Stability Improvements

This update brings a major visual and technical refresh to the application, focusing on a more professional "Terminal" aesthetic and improved handling of environmental file issues.

🎨 UI & User Experience

  • New Dark Theme: Transitioned to a sleek "Deep Slate" and "Terminal Green" color palette with centralized styles for a consistent look across all windows.
  • Refined Layouts: Completely redesigned the About Window with a modern card-based layout and improved the main window's responsiveness.
  • Visual Feedback: Added active state styling to navigation buttons and improved GridView headers with bold, themed typography.
  • Memory Tracking: Added a real-time memory usage indicator in the status bar to monitor application performance.

🛠️ Stability & Compatibility

  • Cloud File Support: Added detection and automatic "hydration" for files stored on OneDrive, Dropbox, and Google Drive, preventing crashes when files aren't yet downloaded.
  • Enhanced Error Handling: Implemented graceful handling for system rendering errors (SEHException) and more descriptive messaging for corrupt archives or interrupted operations.
  • Better Logging: Added detailed status updates during CUE/BIN to ISO conversions and updated the log viewer to use non-blocking asynchronous updates.

⚡ Performance & Core Logic

  • Optimized Searching: Leveraged Span<T> for high-performance signature scanning within ISO files.
  • Thread Safety: Implemented file stream locking to ensure stability during multi-threaded operations in the XISO engine.
  • Smooth Explorer: File extraction during drag-and-drop operations now runs asynchronously, keeping the UI responsive.
  • Smart Defaults: Set xdvdfs.exe as the default conversion engine for improved compatibility.

release_2.0.0

13 Mar 03:25

Choose a tag to compare

🚀 New Features & Engines

  • Multi-Engine Conversion: Added support for external conversion tools. You can now choose between the Native C# Engine, extract-xiso, and the newly integrated xdvdfs (Rust-based) engine.
  • XISO Explorer Enhancements:
    • Drag & Drop: Extract files directly from an ISO to Windows Explorer or your Desktop.
    • Quick Open: Double-click any file within an ISO to open it immediately with its default Windows application.
  • Improved Hardware Monitoring: Added a real-time Read Speed monitor alongside the existing write speed metrics to help identify I/O bottlenecks.

🛠 Core Improvements & Bug Fixes

  • Enhanced XISO Detection: Implemented a prioritized signature scanning approach to accurately identify game partitions in non-standard or unknown Redump ISO variants.
  • Recursive Traversal Fix: Refactored the native directory traversal to be iterative (stack-based), preventing potential stack overflow errors on complex directory structures.
  • Robust File Operations: Added network-resilient retry logic with exponential backoff for operations involving UNC paths, mapped drives, or cloud-synced folders (like OneDrive).
  • Performance Optimization:
    • Added Sparse File support (NTFS) to save disk space.
    • Optimized buffer sizes based on system architecture (x64/x86).
    • Implemented a "Fast Path" for contiguous file layouts.

release_1.10.0

24 Feb 03:49

Choose a tag to compare

  • Enhanced Bug Reporting: Centralized and expanded environment details (OS version, .NET info, architecture, etc.) in BugReportService for better diagnostics.
  • Archive Extraction Upgrade: Replaced 7z library with SharpCompress for improved compatibility, security, and removal of external DLL dependencies.
  • Disk Space Safety: Added available disk space checks in file moving operations to prevent failures due to insufficient storage.

release_1.9.1

17 Feb 18:27

Choose a tag to compare

Filter environmental errors from bug reports and add drive readiness checks

  • Prevent bug reports for IOExceptions related to disconnected drives, network issues, or unavailable devices
  • Add proactive drive readiness verification in ExtractFiles before processing archives

Update Microsoft.Extensions.DependencyInjection to version 10.0.3

release_1.9.0

28 Jan 04:01

Choose a tag to compare

Major architectural overhaul of the BatchConvertIsoToXiso utility, transitioning from a wrapper for external tools to a more robust, native C# application.

Core Technical Changes

  • Native XISO Engine: Removed the dependency on extract-xiso.exe. Core ISO rewriting, trimming, and structural verification are now handled by a custom, native C# engine.
  • Iterative Traversal: Refactored XDVDFS directory traversal from a recursive approach to an iterative one using a stack. This improves maintainability and eliminates stack overflow risks during deep directory processing.
  • Service-Oriented Architecture:
    • Decomposed monolithic MainWindow logic into dedicated services (OrchestratorService, XisoWriter, NativeIsoIntegrityService, ExternalToolService).
    • Implemented Dependency Injection via Microsoft.Extensions.DependencyInjection in App.xaml.cs.
    • Introduced standardized interfaces for all core services to improve testability and modularity.

New Features & UI Enhancements

  • XISO Explorer: Added a new UI tab and logic to browse the internal file structure of Xbox ISOs directly within the application.
  • Enhanced Integrity Testing: Introduced a "Perform Deep Scan" option for sequential sector-read tests and a "Check Output Integrity" toggle for post-conversion validation.
  • UI Redesign: Revamped the layout for better responsiveness and a cleaner aesthetic. Improved progress reporting with indeterminate state handling and immediate visual feedback.
  • ARM64 Support: Added support for ARM64 architectures, including the inclusion of 7z_arm64.dll.

Safety & Maintenance

  • Security Fixes: Mitigated "Zip Slip" vulnerabilities by sanitizing extraction paths and enhancing attribute handling during archive operations.
  • Robust File I/O: Improved handling of cloud-stored files (e.g., OneDrive) with retry prompts and implemented more resilient file move/delete operations to handle transient locks.
  • Code Cleanup: Removed redundant partial classes, obsolete settings logic, and unused dependencies.