Skip to content
Michael Bisbjerg edited this page Nov 6, 2016 · 4 revisions

Project Description

Build status

DiscUtils is a .NET library to read and write ISO files and Virtual Machine disk files (VHD, VDI, XVA, VMDK, etc). DiscUtils is developed in C# with no native code (or P/Invoke).

Implementation of the ISO, UDF, FAT and NTFS file systems is now fairly stable. VHD, XVA, VMDK and VDI disk formats are implemented, as well as read/write Registry support. The library also includes a simple iSCSI initiator, for accessing disks via iSCSI and an NFS client implementation.

Note: this is a fork of https://github.com/quamotion/DiscUtils, which itself is a fork of https://discutils.codeplex.com/.

Note on detections

DiscUtils has a number of detection helpers. These provide services like "which filesystem is this stream?". For this to work, you must register your filesystem providers with the DiscUtils core. To do this, call:

DiscUtils.Setup.RegisterAssembly(assembly);

Where assembly is the assembly you wish to register. Note that the metapackages have helpers:

DiscUtils.Complete.SetupHelper.SetupComplete(); // From LordMike.DiscUtils.Complete
DiscUtils.Containers.SetupHelper.SetupContainers(); // From LordMike.DiscUtils.Containers
DiscUtils.FileSystems.SetupHelper.SetupFileSystems(); // From LordMike.DiscUtils.FileSystems
DiscUtils.Transports.SetupHelper.SetupTransports(); // From LordMike.DiscUtils.Transports

General

Packages

  • DiscUtils

Meta-packages

FileSystems

  • DiscUtils.Ext
  • DiscUtils.Fat
  • DiscUtils.HfsPlus
  • DiscUtils.Ntfs
  • DiscUtils.OpticalDisk
  • DiscUtils.SquashFs

Containers

  • DiscUtils.Dmg
  • DiscUtils.Iso9660
  • DiscUtils.OpticalDiscSharing
  • DiscUtils.Vhd
  • DiscUtils.Vhdx
  • DiscUtils.Vmdk
  • DiscUtils.Wim
  • DiscUtils.Xva

Transports

  • DiscUtils.Iscsi
  • DiscUtils.Nfs
  • DiscUtils.OpticalDisk

Individual packages

  • DiscUtils.BootConfig
  • DiscUtils.Net
  • DiscUtils.Registry
  • DiscUtils.Sdi
  • DiscUtils.Udf
  • DiscUtils.Vdi
Clone this wiki locally