Timeline
6/18/2010:
- 18:09 Build of Eraser 6 [2182] on Windows completed
- 18:04 Build of Eraser 6.2 [2194] on Windows completed
- 15:14 Changeset [2194] by
-
- trunk/eraser/Eraser.Util/ExtensionMethods/IO.cs
- trunk/eraser/Eraser.Util/StreamInfo.cs
Change all internal OpenHandle? functions to private, since they should not be callable from outside the class.
- 15:09 Changeset [2193] by
-
- trunk/eraser/Eraser.DefaultPlugins/Strings.en.resx
- trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx
- trunk/eraser/Eraser.DefaultPlugins/Strings.nl.resx
- trunk/eraser/Eraser.DefaultPlugins/Strings.pl.resx
- trunk/eraser/Eraser.DefaultPlugins/Strings.resx
New strings.
- 15:07 Changeset [2192] by
-
- trunk/eraser/Eraser.DefaultPlugins/Eraser.DefaultPlugins.csproj
- trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/DriveErasureTarget.cs
- trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/DriveErasureTargetConfigurer.Designer.cs
- trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/DriveErasureTargetConfigurer.cs
- trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/DriveErasureTargetConfigurer.resx
- trunk/eraser/Eraser.DefaultPlugins/Plugin.cs
Implemented the erasure of a complete drive or partition. Addresses #20: Attached Drive Total Wipe
- 15:05 Changeset [2191] by
-
- trunk/eraser/Eraser.Util/PhysicalDriveInfo.cs
Implemented the opening of physical disks for direct read/write access.
- 14:37 Changeset [2190] by
-
- trunk/eraser/Eraser/ProgressForm.cs
- trunk/eraser/Eraser/Strings.en.resx
- trunk/eraser/Eraser/Strings.it.resx
- trunk/eraser/Eraser/Strings.nl.resx
- trunk/eraser/Eraser/Strings.pl.resx
- trunk/eraser/Eraser/Strings.resx
There's no need for the UpdateProgress? function to require a SteppedProgressManager?. The only thing that provides is a step name, which we can use a generic one if the progress class is not a SteppedProgressManager?.
- 14:36 Changeset [2189] by
-
- trunk/eraser/Eraser.DefaultPlugins/FileSystems/Fat.cs
- trunk/eraser/Eraser.Util/NtfsApi.cs
- trunk/eraser/Eraser.Util/VolumeInfo.cs
- Define a VolumeStream? class which is a FileStream? customised for raw volume access. This results in the VolumeLock? class being merged into the VolumeStream? class, automatically handling locking and unlocking of volumes.
- Change all internal OpenHandle? functions to private, since they should not be callable from outside the class.
- Perform error checking in OpenHandle? so that even callers of OpenHandle? gets error checking.
- 11:54 Changeset [2188] by
-
- trunk/eraser/Eraser.Util/PhysicalDriveInfo.cs
Define the PhysicalDriveInfo?.Equals function to check whether two VolumeInfo? instances are equal (it is a class type but should exhibit value type behaviour)
- 11:33 Changeset [2187] by
-
- trunk/eraser/Eraser.Util/NativeMethods/Kernel.cs
- trunk/eraser/Eraser.Util/PhysicalDriveInfo.cs
- trunk/eraser/Eraser.Util/VolumeInfo.cs
Allow us to query the size of non-ready partitions and disks (for more informative UIs)
- 11:32 Changeset [2186] by
-
- trunk/eraser/Eraser.Util/PhysicalDriveInfo.cs
Make the device path a constant to increase readability, also, generate the necessary disk and partition paths based on the template.
- 11:29 Changeset [2185] by
-
- trunk/eraser/Eraser.Util/VolumeInfo.cs
Define VolumeInfo?.GetHashCode? since we defined VolumeInfo?.Equals
- 10:01 Changeset [2184] by
-
- trunk/eraser/Eraser.Util/PhysicalDriveInfo.cs
There is no longer a need for the regular expression.
- 10:00 Changeset [2183] by
-
- trunk/eraser
- trunk/eraser/Eraser.Util/VolumeInfo.cs
Forward-port from Eraser 6.0: Supplements r2170: some functions can be used when the drive is not mounted.
- 09:59 Changeset [2182] by
-
- branches/eraser6/6.0/Eraser.Util/VolumeInfo.cs
Supplements r2170: some functions can be used when the drive is not mounted.
- 09:54 Changeset [2181] by
-
- trunk/eraser/Eraser.Util/VolumeInfo.cs
- Define the VolumeInfo?.PhysicalDrive? property to get the physical drive the volume is on
- Define the VolumeInfo?.Equals function to check whether two VolumeInfo? instances are equal (it is a class type but should exhibit value type behaviour)
- 09:33 Changeset [2180] by
-
- trunk/eraser/Eraser.Util/NativeMethods/NtDll.cs
- trunk/eraser/Eraser.Util/PhysicalDriveInfo.cs
Better algorithm to find which partitions are on which drives which works on Windows Vista as well. Address #20: Attached Drive Total Wipe
- 06:53 Changeset [2179] by
-
- trunk/eraser/Eraser.Util/NativeMethods/Kernel.cs
- trunk/eraser/Eraser.Util/VolumeInfo.cs
Refactor a function which parses null-delimited string arrays.
- 06:44 Changeset [2178] by
-
- trunk/eraser/Eraser.Util/NativeMethods/Kernel.cs
- trunk/eraser/Eraser.Util/VolumeInfo.cs
Fixed error in marshalling managed to unmanaged -- the mount points for any volume would only return a maximum of 1 regardless of how many mountpoints there really were due to the array being null-terminated.
- 06:42 Changeset [2177] by
-
- trunk/eraser
- trunk/eraser/Eraser.Util/VolumeInfo.cs
Forward-port from Eraser 6.0: Fixed potential ArgumentException? when a network path is simply remembered, but not mounted.
- 06:40 Changeset [2176] by
-
- branches/eraser6/6.0/Eraser.Util/VolumeInfo.cs
Fixed potential ArgumentException? when a network path is simply remembered, but not mounted.
6/14/2010:
- 17:43 Build of Eraser 6.2 [2175] on Windows completed
- 12:59 Changeset [2175] by
-
- trunk/eraser/Eraser.DefaultPlugins/FileSystems/Windows.cs
Potential fix for a crash when erasing cluster tips (The attributes can't be reset when the exception is thrown)
6/13/2010:
- 17:35 Build of Eraser 6 [2172] on Windows completed
- 17:31 Build of Eraser 6.2 [2174] on Windows completed
- 14:32 Changeset [2174] by
-
- trunk/eraser/Eraser.Util/Eraser.Util.csproj
- trunk/eraser/Eraser.Util/NativeMethods/Kernel.cs
- trunk/eraser/Eraser.Util/PhysicalDriveInfo.cs
- trunk/eraser/Eraser.Util/Win32ErrorCodes.cs
Added a PhysicalDriveInfo? class which allows us to enumerate the physical drives on the current computer, and determine the partitions on those drives. However, this class doesn't yet work on dynamic volumes (or volumes which are non-basic)
- 10:03 Changeset [2173] by
-
- trunk/eraser
- trunk/eraser/Eraser.Util/VolumeInfo.cs
Forward-port from Eraser 6.0: Supplements r2170: some functions can be used when the drive is not mounted.
- 09:57 Changeset [2172] by
-
- branches/eraser6/6.0/Eraser.Util/VolumeInfo.cs
Supplements r2170: some functions can be used when the drive is not mounted.
- 08:54 Changeset [2171] by
-
- trunk/eraser/Eraser.DefaultPlugins/Strings.en.resx
- trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx
- trunk/eraser/Eraser.DefaultPlugins/Strings.nl.resx
- trunk/eraser/Eraser.DefaultPlugins/Strings.pl.resx
- trunk/eraser/Eraser.DefaultPlugins/Strings.resx
New strings.
- 06:28 Changeset [2170] by
-
- trunk/eraser
- trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTarget.cs
- trunk/eraser/Eraser.Util/VolumeInfo.cs
Forward-port from Eraser 6.0: Fix crash when a volume is connected but not mounted.
- 06:25 Changeset [2169] by
-
- branches/eraser6/6.0/Eraser.Manager/Strings.en.resx
- branches/eraser6/6.0/Eraser.Manager/Strings.it.resx
- branches/eraser6/6.0/Eraser.Manager/Strings.nl.resx
- branches/eraser6/6.0/Eraser.Manager/Strings.pl.resx
- branches/eraser6/6.0/Eraser.Manager/Strings.resx
- branches/eraser6/6.0/Eraser/Strings.pl.resx
Updated Strings.
- 06:21 Changeset [2168] by
-
- branches/eraser6/6.0/Eraser.Manager/DirectExecutor.cs
- branches/eraser6/6.0/Eraser.Util/VolumeInfo.cs
Fix crash when a volume is connected but not mounted.
- 05:38 Build of Eraser 6.2 [2167] on Windows completed
- 04:11 Changeset [2167] by
-
- trunk/eraser
- trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTarget.cs
Forward-port from Eraser 6.0: Handle UnauthorizedAccessExceptions? when erasing folders, as certain folders allow us to erase the files within but not the folder itself.
- 04:08 Changeset [2166] by
-
- branches/eraser6/6.0/Eraser.Manager/DirectExecutor.cs
Handle UnauthorizedAccessExceptions? when erasing folders, as certain folders allow us to erase the files within but not the folder itself.
- 04:01 Changeset [2165] by
-
- trunk/eraser/Eraser.Util/Win32ErrorCodes.cs
If we get ERROR_DEV_NOT_EXIST, throw an IOException.
- 03:58 Changeset [2164] by
-
- trunk/eraser/Eraser.Util.Native/OpenHandle.NameResolver.cpp
Fixed potential crash when ResolveHandleName? is called by two threads at the same time (since the initialisation order of the Handle is undefined)
- 03:34 Changeset [2163] by
-
- trunk/eraser/Eraser.DefaultPlugins/Strings.en.resx
- trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx
- trunk/eraser/Eraser.DefaultPlugins/Strings.nl.resx
- trunk/eraser/Eraser.DefaultPlugins/Strings.pl.resx
- trunk/eraser/Eraser.DefaultPlugins/Strings.resx
Rearrangement of strings.
- 03:33 Changeset [2162] by
-
- trunk/eraser/Eraser.DefaultPlugins/FileSystems/Ntfs.cs
For erasing old file system table resident files:
- Rewritten algorithm which is faster than the previous one
- Reset all temporary files' times since they will be simply deleted during the free space erase
For erasing directory structures:
- Reset all temporary files' times so that we can use the faster folder delete instead of the deep erase
- 03:30 Changeset [2161] by
-
- trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/UnusedSpaceErasureTarget.cs
- trunk/eraser/Eraser.DefaultPlugins/FileSystems/Windows.cs
- trunk/eraser/Eraser.Manager/FileSystem.cs
Since we are just simply deleting all temporary files when filling up the drive with junk files, we must reset all file times to invalid.
- 02:40 Ticket #360 (Eraser crashes and is no longer usable after setting up new task) reopened by
- 02:09 Changeset [2160] by
-
- trunk/eraser/Eraser.Util/ProgressManager.cs
Fix the calculation interval expansion/contraction:
- a geometric growth of the amount of time between samples would take too long to get an accurate reading, grow by 30% each time
- reduction by subtracting 3 must only be done if we have sufficient time, otherwise we must maintain the 3-second interval
- 00:52 Changeset [2159] by
-
- trunk/eraser
- trunk/eraser/Eraser.DefaultPlugins/FileSystems/Windows.cs
- trunk/eraser/Eraser.DefaultPlugins/Strings.en.resx
- trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx
- trunk/eraser/Eraser.DefaultPlugins/Strings.nl.resx
- trunk/eraser/Eraser.DefaultPlugins/Strings.pl.resx
- trunk/eraser/Eraser.DefaultPlugins/Strings.resx
Forward-port from Eraser 6.0: Fixed log messages when erasing cluster tips.
- 00:47 Changeset [2158] by
-
- branches/eraser6/6.0/Eraser.DefaultPlugins/FileSystems/Windows.cs
- branches/eraser6/6.0/Eraser.DefaultPlugins/Strings.en.resx
- branches/eraser6/6.0/Eraser.DefaultPlugins/Strings.it.resx
- branches/eraser6/6.0/Eraser.DefaultPlugins/Strings.nl.resx
- branches/eraser6/6.0/Eraser.DefaultPlugins/Strings.pl.resx
- branches/eraser6/6.0/Eraser.DefaultPlugins/Strings.resx
Fixed log messages when erasing cluster tips.
- 00:43 Changeset [2157] by
-
- trunk/eraser/Eraser.DefaultPlugins/FileSystems/Fat.cs
- trunk/eraser/Eraser.DefaultPlugins/FileSystems/Ntfs.cs
- trunk/eraser/Eraser.Manager/FileSystem.cs
Compilo fix.
- 00:39 Changeset [2156] by
-
- trunk/eraser/Eraser.DefaultPlugins/FileSystems/Windows.cs
- Optimised the EraseFileClusterTips? and GetFileArea? function to use one StreamInfo? object per file. This reduces the overhead associated with creating StreamInfos?.
- Minor code restructuring in EraseFileClusterTips? to use one try-finally instead of a try-finally within a using (which does the same thing)
- Removed one try-finally block in EraseClusterTips? when setting file attributes and moved it to EraseFileClusterTips? instead, combining one try-finally block.
- Handle ArgumentExceptions? from the FileSystemInfo?.Attributes.set setter as UnauthorizedAccessExceptions?.
- 00:29 Ticket #273 (Use NtSetInformationFile to deeply set file times) closed by
- fixed: Fixed in r2155, but only for v6.2.
- 00:29 Changeset [2155] by
-
- trunk/eraser/Eraser.DefaultPlugins/FileSystems/Ntfs.cs
- trunk/eraser/Eraser.DefaultPlugins/FileSystems/Windows.cs
- trunk/eraser/Eraser.Util/ExtensionMethods/IO.cs
- trunk/eraser/Eraser.Util/NativeMethods/Kernel.cs
- trunk/eraser/Eraser.Util/NativeMethods/NtDll.cs
- trunk/eraser/Eraser.Util/StreamInfo.cs
Implements #273: Use NtSetInformationFile? to deeply set file times.
6/12/2010:
- 03:56 Ticket #370 (Break up MFT erase folders to folders of fixed lengths.) created by
- Large folders slow down the file system and unnecessarily increases erase …
6/10/2010:
- 20:36 Ticket #369 (Eraser could not load the setting) created by
- After completly uninstalling Eraser 6.0.7.1893, clean and reboot my …
5/21/2010:
- 17:36 Build of Eraser 6.2 [2154] on Windows completed
- 07:50 Changeset [2154] by
-
- trunk/eraser/Eraser/Strings.it.resx
Italian translation of "untranslated" strings
