dotNet Disk Imager
======
README
======
This tool is designed to read, write and verify of RAW or ZIP disk images to removable storage devices, such as USB sticks, SD cards and so on.
For example, writing or backing up a RaspberryPi, UDOO, Odroid and many more developer boards OS images to SD card.
Application also offers wiping of device - you might know, when you write, for example Raspberry PI image to SD card, it then appears to have only small capacity in Windows (tens of MB). If you wipe such device, it will be reinitialized so you can then format it to it's original capacity.
I have developed it, since I'm missing some features in Win32 Disk Imager and development of Win32 Disk Imager doesn't appear much active anymore.
===
FAQ
===
-How to show options dialog ?
Press "Ctrl + O" or right click window's title bar and select Options from context menu
-I don't see mapped drives in file dialog
This is Windows "feature". When application is run with administrator privileges, mapped drives don't appear in file dialog. However, there is an easy fix in registry. Just right click window's title bar and select "Enable mapped drives" in context menu. You will be asked to restart your computer. When you do, mapped drives should appear in file dialog.
-What are availible command line arguments ?
Arguments are in list below, enclosed in double quotes, just to separate them from text. Pass them without double quotes. Arguments order does not matter.
"-device" or "-d" followed by list of device letters you want to select (just device letter is enough). Selects only availible devices, not availible devices will be skipped.
"-image" or "-i" followed by path to image (enclose whole path to double quotes)
"-read" or "-r" selects read operation. If "-start" supplied, starts reading from device to image file if possible. If "-start" isn't supplied, does nothing.
"-write" or "-w" selects write operation. If "-start" supplied, starts writing from image file to device(s) if possible. If "-start" isn't supplied, does nothing.
"-verify" or "-v" selects verify operation. If supplied with "-start" and "-read" or "-write", verification will be run after selected operation finishes. If supplied only with "-start", starts verification image file to device(s). If supplied without "-start", corresponding checkbox will be selected.
"-onlyallocated" or "-oa" reads or verifies only allocated partitions if "-start" is supplied. If not, corresponding checkbox will be selected.
"-zip" or "-z" followed by "on" or "off". If "-zip" argument isn't explicitly specified, zipping will be automaticaly selected based on extension of image file
"-start" or "-s" immediately starts selected operation if possible
"-encryption" or "-e" followed by "on" or "off". If "-encryption" argument isn't explicitly specified, encryption will be automaticaly selected based on extension of image file
Examples:
'dotNetDiskImager.exe -d E F -i "D:\raspi_images\raspbian_jessie_lite.zip" -w -z on -s'
-Starts writing selected image file (zipped, with explicit '-z on' argument specified(not neccessary, but just to be sure)) to devices E:\ and F:\
'dotNetDiskImager.exe -d E -i "D:\raspi_images\raspbian_backup.bck" -r -z on -oa -v'
-Starts application with E:\ device selected if availible, "D:\raspi_images\raspbian_backup.bck" as image path, checked compression, verification and read only allocated partitions checkboxes selected, but doesn't automaticaly starts any action.
=========
IMPORTANT
=========
Since this is new software, your web browser, operating system or even possibly antivirus software may report security alerts against this tool. Please ignore that messages until this tool gets widely spread.
=====
LEGAL
=====
This tool comes with no warranty of any kind. We are not responsible for any damage this tool can cause. The tool was developed in free time with nothing but good intentions to help anybody who will use it.
============
INSTALLATION
============
No installation, just a single, small executable. Admin privilegies required.
.NET framework 4.6.1 must be installed on your system to run the application. If you don't have it yet, get it here: http://go.microsoft.com/fwlink/?LinkId=671729
Only Windows 7 SP1 and newer supported, due to dependency on .NET Framework. For older operating systems, use Win32 Disk Imager.
============
KNOWN ISSUES
============
Version 0.1.35.42 to Version 0.8.958.32
-There might be the same issue as with Win32 Disk Imager, when used to write to USB floppy drives - I have no way of test it, since I don't have any. I'm looking for somebody who is willing to test it at his own risk. Until then, please don't use this tool to write to USB floppy drives.
-Verifying not giving right result if runned manually - more here: https://sourceforge.net/p/dotnetdiskimager/bugs/1/
=========
CHANGELOG
=========
Version 0.8.958.32
-supressed error when device doesn't contain any disk (for example memory card reader withou memory card) - feature request #17 (https://sourceforge.net/p/dotnetdiskimager/featurerequest/17/)
-refresh button added to UI, right next to device selector -> no need to restart the app, if you enter the memory card to reader after the application start.
-implemented encryption/decryption support. Fully in-memory and on the fly -> no temporary files are created. It is a custom format, so only dotNetDiskImager can create and read those files. - feature request #16 (https://sourceforge.net/p/dotnetdiskimager/featurerequest/16/)
-zipping of encrypted images is also supported, however, encrypted images are basicaly uncompressable, so the size won't be reduced at all. I'm doing research on this, how to get around it.
-new UI with option to select Light/Dark style.
-bugfixes
Version 0.7.347.27
-fixed bug #3 (https://sourceforge.net/p/dotnetdiskimager/bugs/3/)
-minor fixes
Version 0.7.245.21
-fixed error sometimes occuring when trying to lock device(s)
Version 0.7.235.18
-more descriptive error messages (Feature request - https://sourceforge.net/p/dotnetdiskimager/featurerequest/7/)
-added option to automatically close application after operation finishes, but only if it was finished successfully (feature is disabled by default) (Feature request - https://sourceforge.net/p/dotnetdiskimager/featurerequest/9/)
-added support for passing file path on command line to enable explorer 'open with' menu (Feature request - https://sourceforge.net/p/dotnetdiskimager/featurerequest/10/)
-added option to automatically select device, if there is only one suitable device availible (feature is disabled by default) (Feature request - https://sourceforge.net/p/dotnetdiskimager/featurerequest/11/)
-added accelerators (Feature request - https://sourceforge.net/p/dotnetdiskimager/featurerequest/14/)
-application now remembers last window position when closing, it will appear at the same position when runned again
Version 0.6.157.16
-Added option to show more detailed informations about operation result. Just click on "i" button next to "X" button in panel which appears when operation finishes.
-Bugfixes
-Minor UI improvements
Version 0.5.83.23
-Implemented feature request #6 (https://sourceforge.net/p/dotnetdiskimager/featurerequest/6/), device size in bytes is now visible in device info window.
-Implemented/fixed feature request #5 (https://sourceforge.net/p/dotnetdiskimager/featurerequest/5/), should be working fine now. Also if device and image size are not equal, messagebox now shows size difference between them.
-Fixed "Display warnings before write" option, which should work fine now.
-Reduced memory pressure when writing to device or verifying.
Version 0.5.76.18
-Added device info button to device select control, so you can see basic information about device's partitions.
-Reworked wipe device algorithm to work more reliable
-Added command line arguments support - more info above
-bugfixes
Version 0.4.64.45
-simultaneous write, verify and wipe multiple device support added - obviously speed is limited by the slowest device
-wipe device(s) support added - wipes device's partition table and filesystem. You then need to reformat the device in Windows format dialog or in any other preferred formatting software
-added option to keep program window always on top
-prevent Windows from entering sleep mode during program operation
-minor improvements
Version 0.3.59.15
-added checksum calculation (MD5,SHA1,SHA256)
-device select control now shows device's total capacity
-minor improvements
Version 0.2.39.21
-on the fly zipping and unzipping of the image - completely native and in memory (no temporary extracted/compressed files etc.)
-user configurable custom places for file select dialog
-option to play sound when operation finishes
-bugfixes
Version 0.1.35.42
-first public release
-read, write and verify RAW disk images
-progress tracking with speed histogram and remaining time estimate
-customizable taskbar appearance
-basic application configuration
-supports images on UNC paths
-drag & drop for drives and images
=======
LICENSE
=======
This software is completely free without any restrictions of any kind. Feel free to use it as you need.
=======
CREDITS
=======
OxyPlot team (http://oxyplot.org/) - for developing such an amazing plotting library for .NET for free, under MIT license