Timeline


and

12/27/08:

21:42 Ticket #102 (Trac "my tickets" does not work.) created by chris12923
In trac if I click "my tickets" button it will tell me no matches found. …
18:43 Ticket #101 (plugin popup window spelling error) created by chris12923
Plugin popup window on first run after install has spelling error which I …
18:42 Ticket #100 (plugin popup window spelling error) created by chris12923
Plugin popup window on first run after install has spelling error which I …
18:39 Ticket #99 (Plugins popup window Vista 32) created by chris12923
Plugins popup window Vista 32 After install and choosing to run after …
18:23 Ticket #98 (settings popup after install Vista 32) created by chris12923
settings popup after install Vista 32 Installed Eraser Chose Run Eraser …

12/26/08:

22:23 Ticket #97 ("Eraser has stopped working" popup on Vista 64) created by chris12923
Installed fine Installed .net fine Checked the run Eraser checkbox …

12/23/08:

20:09 Ticket #96 (Eraser Boot !) created by Overwriter
OK I know there is enough work to be done to get the standard windows …
20:08 Ticket #95 (CD / DVD Erasure) created by Overwriter
One for Eraser V6.3 I think. Trivial request again but I think it would …
20:07 Ticket #94 (All web pages for Eraser should link to each other.) created by Overwriter
Trivial request. All web pages for Eraser should link to each other. …

12/22/08:

13:55 Ticket #92 (Restart Problems After Eraser 6.0.2.813 Install.) closed by Joel
fixed: Yeah, fixed.

12/17/08:

16:11 Ticket #93 (Eraser 5.86.1 Not Erasing .txt or URL files) created by harkonenn
Joel, this is a reminder, as you requested. Eraser 5.86.1 does not …

12/14/08:

10:59 Changeset [820] by lowjoel
  • branches/eraser6/Eraser/MainForm.cs
  • branches/eraser6/Eraser/Program.cs
  • branches/eraser6/Eraser/SettingsPanel.cs

Make the EraserSettings? class a singleton. Stylistically that's more correct (thanks Svante!)

10:30 Changeset [819] by lowjoel
  • branches/eraser6/Installer/Installer.wixproj

Another harmless warning suppressed.

10:25 Changeset [818] by lowjoel
  • branches/eraser6/Installer/Installer.wixproj

Ignore ICE03 since it's harmless.

10:19 Changeset [817] by lowjoel
  • branches/eraser6/Eraser/MainForm.cs

-Fixed the check when Eraser is closed (on whether to minimise to system notification area). The comparison was false therefore leading to XP users being unable to shutdown their computers. Partially fixes #92.
-Use the EraserSettings? class as a concrete version of the settings store.

10:16 CompilingEraser edited by Joel
Express users cannot compile the Shell Extension (diff)
10:04 Changeset [816] by lowjoel
  • branches/eraser6/Installer
  • branches/eraser6/Installer/DirectoryStructure.wxs
  • branches/eraser6/Installer/Eraser.wxs
  • branches/eraser6/Installer/Installer.wixproj

Added Merge Modules to the WiX project because the Shell extension requires the CRT, ATL and MFC libraries. CompilingEraser has also been updated to reflect the new instructions.

10:02 Changeset [815] by lowjoel
  • branches/eraser6/Installer/Bootstrapper/Main.cpp

Force the bootstrapper to redraw the progress window after it has been created so under XP it doesn't have a white background.

09:52 CompilingEraser edited by Joel
Merge modules have been added to the MSI because the Shell is written … (diff)

12/13/08:

16:33 Ticket #92 (Restart Problems After Eraser 6.0.2.813 Install.) created by Overwriter
XP Pro SP3 Dot-Net 3.5 Fresh install of Eraser 6.0.2.813 Setup.exe. …
09:00 Ticket #46 (Implement Tasklist competion action) closed by trac-robot
This ticket was closed automatically by the system. It was previously set …

12/13/2008:

02:30 Changeset [814] by lowjoel
  • branches/website/Templates/Eraser.dwt
  • branches/website/announcements/20081201.html
  • branches/website/announcements/20081213.html
  • branches/website/contributing.html
  • branches/website/index.php
  • branches/website/reviews.html

Released rc2

01:26 Changeset [813] by lowjoel
  • branches/eraser6/Installer/Eraser.wxs
  • branches/eraser6/ShellExt/ShellExt_i.c
  • branches/eraser6/ShellExt/ShellExt_i.h
  • branches/eraser6/Version.cs
  • branches/eraser6/Version.rc
  • branches/eraser6/Version.wxs

Build 813 (rc2) is ready.

12/12/2008:

12:18 Changeset [812] by lowjoel
  • branches/eraser6/Manager/Task.cs

There's no need for the archaic *.*, * will do.

11:30 Ticket #91 (Code Cleanup) created by Joel
While going through the code I see a big difference between newly written …
11:21 Changeset [811] by lowjoel
  • branches/eraser6/Manager/DirectExecutor.cs

-Progress calculation is now based on a 15-second average
-Catch exceptions when enumerating ADSes, they may be thrown if access to the file is denied.

11:20 Changeset [810] by lowjoel
  • branches/eraser6/Util/File.cs

Apparently SfcIsFileProtected? can return 0 as well, no idea why. But the files are usually unprotected.

11:16 Changeset [809] by lowjoel
  • branches/eraser6/Eraser/TaskDataSelectionForm.cs

-Unused space erasures should have the trailing \ after the volume identifier, otherwise it refers to the current directory on the drive.
-Set the erase cluster tips checkbox value correctly, there was a mistake there in reading a blank Task.

10:19 Changeset [808] by lowjoel
  • branches/eraser6/Manager/DirectExecutor.cs
  • branches/eraser6/Manager/Executor.cs
  • branches/eraser6/Manager/Strings.en.resx
  • branches/eraser6/Manager/Strings.nl.resx
  • branches/eraser6/Manager/Strings.resx
  • branches/eraser6/Util/StreamInfo.cs

-Up the number of retries before giving up removing a file to 50
-Implemented stream attribute setting/getting in StreamInfo?

07:04 Changeset [807] by lowjoel
  • branches/eraser6/Manager/DirectExecutor.cs

-Allow cancellation of file cluster tips erasures
-Only erase the cluster tips if we can lock the file for our own use (to prevent corruption)

06:51 Changeset [806] by lowjoel
  • branches/eraser6/Manager/Task.cs

Use a custom version of GetFiles? instead of the one in DirectoryInfo? since the latter will throw an UnauthorizedAccessException? whenever it reaches a folder it can't read then completely give up: we need at least most of the entries to erase.

06:50 Changeset [805] by lowjoel
  • branches/eraser6/Manager/Strings.en.resx
  • branches/eraser6/Manager/Strings.nl.resx
  • branches/eraser6/Manager/Strings.resx

New strings

06:48 Changeset [804] by lowjoel
  • branches/eraser6/Manager/DirectExecutor.cs

Break up the ProgressManager? class into the same base class and a TaskProgressManager? class which handles a task as well. This partially implements #90

06:05 Changeset [803] by lowjoel
  • branches/eraser6/Manager/DirectExecutor.cs

Reset all file attributes before erasing a file's cluster tips, unless the file is encrypted, compressed or sparse.

05:54 Changeset [802] by lowjoel
  • branches/eraser6/Manager/DirectExecutor.cs

-A few minor optimisations
-Implemented a crude progress callback for old file system entry erasures

05:51 Ticket #90 (Generic speed meter) created by Joel
The DirectExecutor? code needs a generic way of measuring speed and amount …
04:06 Changeset [801] by lowjoel
  • branches/eraser6/Manager/Settings.cs

Implement caching when querying for defaults. This should reduce the performance penalty when querying for PRNGs in a tight loop.

03:41 Changeset [800] by lowjoel
  • branches/eraser6/Manager/Task.cs

So long a drive has a Recycle Bin folder it *should* be eraseable

03:40 Changeset [799] by lowjoel
  • branches/eraser6/Manager/DirectExecutor.cs

-Add the task into the list of tasks, broadcast the task added event THEN queue the task. This prevents the task started event from reaching the event handlers before the task added event, in essence forcing the task to start without having been added
-Securely remove the old files and folders, simple deletion leaves the files behind and forensic analysis can tell users when the volume was erased
-Make the file names used for erasing as long as possible (within MAX_PATH)

03:24 Changeset [798] by lowjoel
  • branches/eraser6/Manager/DirectExecutor.cs

-Create one-byte files to clear resident MFT entries: the size of one cluster seems too big and the write just fails
-Create the temporary MFT clearing files in a subfolder for removal later

03:23 Changeset [797] by lowjoel
  • branches/eraser6/Eraser/ProgressForm.cs

Set all progress bars and associated labels to display 100% upon completion of the task.

03:12 Changeset [796] by lowjoel
  • branches/eraser6/Manager/Strings.en.resx
  • branches/eraser6/Manager/Strings.nl.resx
  • branches/eraser6/Manager/Strings.resx

Use the new terminology I decided upon in the previous revision.

03:04 Ticket #89 (NTFS directory entries not erased) closed by Joel
fixed: Implemented in r795.
03:04 Changeset [795] by lowjoel
  • branches/eraser6/Manager/DirectExecutor.cs
  • branches/eraser6/Manager/Executor.cs
  • branches/eraser6/Manager/Strings.en.resx
  • branches/eraser6/Manager/Strings.nl.resx
  • branches/eraser6/Manager/Strings.resx
  • branches/eraser6/Util/NtfsAPI.cs
  • branches/eraser6/Util/Util.csproj

-Replace FAT/MFT with a more file system neutral term "file system entries". That will be used in place of the specific terms in the UI, but in the code MFT and FAT will be used when referring to the specific file systems.
-Remove *both* resident file system table files and the old file system entries. Previous versions were implemented wrongly in that they implemented the former but not the latter. This rixes #89.
-Added a basic NTFS API for use in file system table clean ups.

02:46 Changeset [794] by lowjoel
  • branches/eraser6/Eraser/Eraser.csproj

No need to regenerate the .designer.cs files for the resx files.

12/11/2008:

14:26 Ticket #89 (NTFS directory entries not erased) created by Joel
I just did a check between the erasures of v5 vs v6 using Recuva and …
13:53 Changeset [793] by lowjoel
  • branches/eraser6/Installer/Eraser.wxs

Disable the creation of the Windows Installer shortcuts which help repair applications automatically because users will run Eraser as an administrator quite regularly and the special shortcuts lack that entry.

13:34 Changeset [792] by lowjoel
  • branches/eraser6/Installer/Bootstrapper/Bootstrapper.cpp
  • branches/eraser6/Installer/Bootstrapper/Main.cpp

Don't reset the progress bar style to remove the marquee if it wasn't set to begin with: this fixes the problem of the progress bar always displaying zero.

13:11 Changeset [791] by lowjoel
  • branches/eraser6/Eraser/Program.cs
  • branches/eraser6/Eraser/Strings.en.resx

Don't place the Eraser Executor instance in a Using block in the program initialisation code for GUI: the function is meant to be exited for the application to start running. Instead, clean up during the exit phase of the program's lifetime. This fixes a regression when moving to the single instance application model.

12:22 Ticket #88 (Single Instance) closed by Joel
fixed: Implemented in r781. I thought it was quite important because like you …
12:20 Changeset [790] by lowjoel
  • branches/eraser6/Eraser/Program.cs

Alignment eyecandy

12:19 Changeset [789] by lowjoel
  • branches/eraser6/ShellExt/CtxMenu.cpp
  • branches/eraser6/ShellExt/CtxMenu.h
  • branches/eraser6/ShellExt/ShellExt.rc
  • branches/eraser6/ShellExt/resource.h

-Replace all functions taking a string parameter to take a const reference to reduce copying
-Factor out the call to launch Eraser, allowing for the spawned instance to run elevated (though it is currently unimplemented)

12:15 Changeset [788] by lowjoel
  • branches/eraser6/Eraser/Program.cs
  • branches/eraser6/Eraser/Strings.NL.resx
  • branches/eraser6/Eraser/Strings.en.resx
  • branches/eraser6/Eraser/Strings.resx

Show a helpful message whenever Eraser tries to communicate with another instance of higher privileges (e.g., when a non-elevated process is communicating with an elevated process)

08:49 Changeset [787] by lowjoel
  • branches/eraser6/Eraser/SchedulerPanel.cs

Removed the duplicate string as mentioned earlier.

08:46 Changeset [786] by lowjoel
  • branches/eraser6/Eraser/Eraser.csproj
  • branches/eraser6/Eraser/MainForm.cs
  • branches/eraser6/Eraser/Program.cs

Force the creation of the main window if the main window is not going to be displayed on the first run.

08:17 Changeset [785] by lowjoel
  • branches/eraser6/Eraser/Strings.Designer.cs
  • branches/eraser6/Eraser/Strings.NL.resx
  • branches/eraser6/Eraser/Strings.en.resx
  • branches/eraser6/Eraser/Strings.nl.Designer.cs
  • branches/eraser6/Eraser/Strings.resx

Replaced a duplicate string (just with a period)

06:54 Changeset [784] by lowjoel
  • branches/eraser6/Eraser/MainForm.Designer.cs
  • branches/eraser6/Eraser/MainForm.cs
  • branches/eraser6/Eraser/UpdateForm.cs

-For consistency, I'm changing all calls to Control.Hide and Control.Show to Control.Visible = false and Control.Visible = true respectively
-When the MainForm? is asked to be shown, assume it is from the system notification area and activate the form as well

06:51 Changeset [783] by lowjoel
  • branches/eraser6/Manager/RemoteExecutor.cs

Copy how pipe servers asynchronously wait for connections from Program.cs, since during my debugging the latter's implementation produced more reliable connections. Hopefully this really fixes the problem of intermittent connections.

05:12 Changeset [782] by lowjoel
  • branches/eraser6/Eraser/Program.cs

Documented the event handlers

03:29 Changeset [781] by lowjoel
  • branches/eraser6/Eraser/Eraser.csproj
  • branches/eraser6/Eraser/Program.cs

Implemented a Single-Instance version of Eraser. The GUI program will only run once per user; subsequent instances will trigger the first instance to appear.

12/10/2008:

10:34 Changeset [780] by lowjoel
  • branches/eraser6/Util/Util.csproj
  • branches/eraser6/Version.binc

Forget about the binc file. I can't get it to work.

10:23 Changeset [779] by lowjoel
  • branches/eraser6/Eraser/SchedulerPanel.cs

Display the balloon only when the main frame is minimised.

10:03 Changeset [778] by lowjoel
  • branches/eraser6/Manager/DirectExecutor.cs
  • branches/eraser6/Manager/Task.cs

Replaced the internally-accessible variables into properties which can be accessed internally.

09:56 Changeset [777] by lowjoel
  • branches/eraser6/Manager/Task.cs

-Log all failed directory/ADS traversals
-Allow all erasure targets to have a reference to the task which owns them

-So I've created an ErasureTargetsList? which handles adds and inserts which sets the target Task property so that the Task can be accessed by targets

09:48 Changeset [776] by lowjoel
  • branches/eraser6/Eraser/Resources/BackgroundLogo.png

RC2 artwork.

09:35 Ticket #88 (Single Instance) created by hangy
It would be nice if Eraser ensured that there is only one instance of the …
09:21 Ticket #73 (Parallel erasures of different physical drives) closed by hangy
duplicate: Seems like a dupe of #15.
07:25 Changeset [775] by lowjoel
  • branches/eraser6/Eraser/MainForm.cs
  • branches/eraser6/Eraser/MainForm.resx

Force the creation of the window handles immediately after the control has been created so that when events come from other threads the controls will not be created in the child threads and will instead be created in the main thread.

06:27 Changeset [774] by lowjoel
  • branches/eraser6/Manager/DirectExecutor.cs

Removed a duplicate TODO for FAT erasures.

06:25 Changeset [773] by lowjoel
  • branches/eraser6/Eraser/MainForm.cs
  • branches/eraser6/Eraser/Program.cs
  • branches/eraser6/Installer/DirectoryStructure.wxs

Eraser now takes two command parameters for GUI mode: --atRestart and --quiet.

  • --atRestart tells Eraser that the program was started at a system boot and should run the erase at restart tasks
  • --quiet tells Eraser to run without displaying any UI and to hide itself in the system notification area
05:55 Changeset [772] by lowjoel
  • branches/eraser6/Installer/SignBin.bat

Paginate the command nicely

05:47 Changeset [771] by lowjoel
  • branches/eraser6/ShellExt/CtxMenu.cpp

Woops, accidentally slipped in a line of debug code.

05:35 Changeset [770] by lowjoel
  • branches/eraser6/Installer/SignBin.bat

Combine the signing into two command lines. Signing is sped up slightly.

05:34 Changeset [769] by lowjoel
  • branches/eraser6/ShellExt/CtxMenu.cpp
  • branches/eraser6/ShellExt/ShellExt_i.c
  • branches/eraser6/ShellExt/ShellExt_i.h

64-bit warning fix

05:25 Changeset [768] by lowjoel
  • branches/eraser6/ShellExt/DllMain.cpp

Set the Invalid parameter handler to a null handler; all secure CRT calls we make are checked for errors.

05:23 Changeset [767] by lowjoel
  • branches/eraser6/ShellExt/CtxMenu.cpp
  • branches/eraser6/ShellExt/stdafx.h

-Replace all ZwQueryKey? calls with NtQueryKey? (according to MSDN docs)
-Fixed release build crashes: NtQueryKey? should have been declared as stdcall
-Fixed the incorrct use of the ERROR constants; NT API calls use the STATUS constants. ERROR constants are for Win32 calls.

01:12 Ticket #87 (Eraser starting up on reboot) created by Joel
http://bbs.heidi.ie/viewtopic.php?f=2&t=5423

12/9/2008:

12:59 Changeset [766] by lowjoel
  • branches/eraser6/Installer/DirectoryStructure.wxs

-Start Eraser at system startup for the Erase on Restart tasks to function
-Add Eraser to the approved shell plugins list
-Quote all eraser paths, even though they are short filen ames

09:34 Changeset [765] by lowjoel
  • branches/eraser6/DefaultPlugins/EraseCustom.cs
  • branches/eraser6/Manager/Method.cs
  • branches/eraser6/Util/StreamInfo.cs

These exceptions were incorrectly labelled as Not Implemented when they were actually other types of exceptions.

09:28 Ticket #86 (Allow users to start Eraser Setup silently) closed by Joel
fixed: Implemented in r764.
09:25 Changeset [764] by lowjoel
  • branches/eraser6/Installer/Bootstrapper/Bootstrapper.cpp
  • branches/eraser6/Installer/Bootstrapper/Bootstrapper.h
  • branches/eraser6/Installer/Bootstrapper/Main.cpp

Allow users to specify a --quiet or -q switch to prevent the display of any UI. Implements #86.

09:19 Changeset [763] by lowjoel
  • branches/eraser6/ShellExt/DllMain.def

No need for the LIBRARY declaration which threw warnings un x64 builds.

09:12 Changeset [762] by lowjoel
  • branches/eraser6/Installer/DirectoryStructure.wxs
  • branches/eraser6/Installer/SignBin.bat

Updated the paths to the shell extension DLLs after the output names and directories were changed in an earlier commit.

09:11 Changeset [761] by lowjoel
  • branches/eraser6/Eraser/Program.cs

-Make sure CommandMain? always returns a value
-When a Win32Exception is caught, return the error code as the application exit code

09:10 Changeset [760] by lowjoel
  • branches/eraser6/Eraser.sln

The installer is dependent on the Shell extension binaries.

08:40 Changeset [759] by lowjoel
  • branches/eraser6/Eraser/Program.cs
  • branches/eraser6/ShellExt/CtxMenu.cpp
  • branches/eraser6/ShellExt/CtxMenu.h

-Replace the Eraser program entry points with those that retunr ints for statuses to be returned to the shell extension
-Create a default constructor for the Handle class to allow for the initialisation of NULL handles
-Factor out the string formatting code to the FormatString? function. Allows for reuse later on
-Replace all new[]'s and selete[]'s with std::vector as the buffer to prevent memory leaks
-Implemented error checking when the Eraser binary is called from the shell extension. If the process returns an error status, we must be sure to read the output pipe for the error and display it to the user.

12/8/2008:

13:02 Ticket #86 (Allow users to start Eraser Setup silently) created by Joel

12/6/2008:

12:24 Changeset [758] by lowjoel
  • branches/website/Templates/Eraser.dwt
  • branches/website/announcements/20081201.html
  • branches/website/contributing.html
  • branches/website/index.php
  • branches/website/reviews.html

Added an announcement regarding the CA certs.

12:19 Changeset [757] by lowjoel
  • branches/eraser6/Dialog Designs/eraser.icons.ico

This icon isn't referenced anywhere.

10:35 Changeset [756] by lowjoel
  • branches/eraser6/Eraser/Program.cs

The default schedule on the command line is to queue for immediate execution.

10:34 Ticket #84 (Implement Erase on Restart) closed by Joel
fixed: Implemented in r751, r752 and r755
10:33 Changeset [755] by lowjoel
  • branches/eraser6/ShellExt/CtxMenu.cpp

Allow the shell extension to specify when a task should be executed. Implements #84

10:32 Changeset [754] by lowjoel
  • branches/eraser6/Manager/Task.cs

Provide sane defaults for the Folder erasure targets.

10:32 Changeset [753] by lowjoel
  • branches/eraser6/Manager/RemoteExecutor.cs

Fixed the problem of spurious pipes which spontaneously break... I think/hope.

09:17 Changeset [752] by lowjoel
  • branches/eraser6/Eraser/Program.cs

Actually send the correct schedule, not just parse the command line correctly.

09:04 Changeset [751] by lowjoel
  • branches/eraser6/Eraser/Program.cs

-Allow users to specify the schedule on the command line
-Check that tasks have at least one target

08:55 Changeset [750] by lowjoel
  • branches/eraser6/Eraser/Program.cs

-Create the RemoteExecutorClient? instance only when AddTask? is called; otherwise the instance is not used.
-Document the help action, and added documentation for the future schedule parameter to addtask

08:44 Changeset [749] by lowjoel
  • branches/eraser6/Manager/RemoteExecutor.cs

Implement pipe connections correctly.
-Create one new instance every time a pipe is used up and close it when it is done.
-Use a threadpool to execute the tasks asynchronously (and so the main thread can wait for more connections)

08:25 Changeset [748] by lowjoel
  • branches/eraser6/Manager/RemoteExecutor.cs

Implement a proper asynchronous wait handler for connections.

08:17 Ticket #85 (Relative file paths on Eraser Command Line) closed by Joel
fixed: Implemented in r747.
08:17 Changeset [747] by lowjoel
  • branches/eraser6/Eraser/Program.cs

Always transfer the absolute file path when sending a request to a RemoteExecutorServer?, since the working directories may be different. Fixes #85.

07:46 Ticket #85 (Relative file paths on Eraser Command Line) created by Joel
Relative file paths on the command line will be executed relative to the …
07:44 Changeset [746] by lowjoel
  • branches/eraser6/Eraser/SchedulerPanel.cs
  • branches/eraser6/Eraser/Strings.NL.resx
  • branches/eraser6/Eraser/Strings.en.resx
  • branches/eraser6/Eraser/Strings.resx

Slightly friendlier informational message.

07:41 Changeset [745] by lowjoel
  • branches/eraser6/Eraser/MainForm.cs
  • branches/eraser6/Eraser/SchedulerPanel.cs
  • branches/eraser6/Eraser/Strings.NL.resx
  • branches/eraser6/Eraser/Strings.en.resx
  • branches/eraser6/Eraser/Strings.resx

-Added the ShowNotificationBalloon? function which allows code to display notifications in the notification area
-Display a balloon when a new task has been added to the queue

07:22 Changeset [744] by lowjoel
  • branches/eraser6/Manager/RemoteExecutor.cs

Make sure all clients call Connect explicitly; the wait time is now 3 seconds up from 0.25 seconds.

07:21 Changeset [743] by lowjoel
  • branches/eraser6/Manager/Task.cs

Give all variables reasonable defaults at initialisation.

07:03 Ticket #84 (Implement Erase on Restart) created by Joel
Context menu entry is present but is currently a no-op.
07:02 Ticket #12 (Create explorer extension) closed by Joel
fixed: Decision: I'll Close this ticket, and then create anew one as an …
06:58 Ticket #81 (Control shell integration through Eraser Settings) closed by Joel
fixed: Implemented in r742.
06:58 Changeset [742] by lowjoel
  • branches/eraser6/Eraser/Program.cs
  • branches/eraser6/Eraser/SettingsPanel.cs
  • branches/eraser6/ShellExt/CtxMenu.cpp

Allow the user to control whether the shell extension should be loaded from the Settings panel; and that should only affect the current user. Implements #81

06:14 Ticket #83 (Upgrade Remote Executor classes) created by Joel
The current Remote Executor classes only allow task addition and deletion, …
06:04 Ticket #82 (Eraser command line without --method) closed by Joel
fixed: Fixed in r737.
06:03 Ticket #76 (Recycle bin context menu to be in submenu) closed by Joel
fixed: Implemented. I'm not sure how good the solution is... but yeah. …
06:00 Changeset [741] by lowjoel
  • branches/eraser6/Eraser/MainForm.cs
  • branches/eraser6/Eraser/Program.cs
  • branches/eraser6/Eraser/SchedulerPanel.cs
  • branches/eraser6/Manager/DirectExecutor.cs
  • branches/eraser6/Manager/Executor.cs

Created interfaces such that event handlers can be associated with tasks being added or removed; this allows for other remote clients to add tasks to the executor instance and the owning program to be aware of such changes (and update UI accordingly.)

04:59 Changeset [740] by lowjoel
  • branches/eraser6/Eraser/Program.cs

Allow Eraser to accept remote connections from other sources on the same machine.

04:55 Changeset [739] by lowjoel
  • branches/eraser6/Manager/RemoteExecutor.cs

Ignore the request (or partial request) sent by clients who disconnect before the request is completely transferred

03:34 Changeset [738] by lowjoel
  • branches/eraser6/Manager/RemoteExecutor.cs

Include the User SID when creating a server instance so that multi-user scenarios are taken care of.

03:29 Changeset [737] by lowjoel
  • branches/eraser6/Eraser/Program.cs
  • branches/eraser6/Manager/RemoteExecutor.cs

-Allow the --method parameter to be optional
-If a RemoteExecutorServer? instance is not running, Program should detect it and start a new Eraser instance.

03:04 Changeset [736] by lowjoel
  • branches/eraser6/ShellExt/CtxMenu.cpp
  • branches/eraser6/ShellExt/CtxMenu.h

Fixed crash in Explorer because of the lack of a mechanism to maintain the MenuTitle? pointer.

03:01 Changeset [735] by lowjoel
  • branches/eraser6/ShellExt/CtxMenu.cpp
  • branches/eraser6/ShellExt/CtxMenu.h

-Load the Eraser name at runtime for localisation to be possible.
-Place the error messages into the resource section for localisation.

02:52 Changeset [734] by lowjoel
  • branches/eraser6/ShellExt/stdafx.h

No need to precompile resource.h

02:52 Changeset [733] by lowjoel
  • branches/eraser6/ShellExt/ShellExt.rc
  • branches/eraser6/ShellExt/resource.h

Renumber the messages so that the project name, extension name etc can be included in the list of localisable strings

02:30 Changeset [732] by lowjoel
  • branches/eraser6/Installer/DirectoryStructure.wxs
  • branches/eraser6/ShellExt/ShellExt.vcproj

Instead of putting the Shell extension into separate subfolders of the project output directory which prevents the DLL from finding the EXE, add the architecture to the end of the DLL name, then when packaging for MSIs we use the actual name.

02:26 Changeset [731] by lowjoel
  • branches/eraser6/ShellExt/CtxMenu.cpp

THIS handling of the command line will allow -q to be passed to prevent a console window from appearing.

02:17 Changeset [730] by lowjoel
  • branches/eraser6/ShellExt/CtxMenu.cpp

Implemented volume unused space erasure and recycle bin erasure.

02:09 Changeset [729] by lowjoel
  • branches/eraser6/ShellExt/ShellExt.rc

Slightly more Explorer-like help text.

02:06 Changeset [728] by lowjoel
  • branches/eraser6/ShellExt/CtxMenu.cpp
  • branches/eraser6/ShellExt/ShellExt.rc
  • branches/eraser6/ShellExt/resource.h

Added help strings for the other context menu items.

02:05 Changeset [727] by lowjoel
  • branches/eraser6/ShellExt/ShellExt.vcproj
  • branches/eraser6/ShellExt/stdafx.h
  • branches/eraser6/ShellExt/targetver.h

OK, I've reincluded targetver since the Resource File Editor generates RC files that include the file.

02:00 Changeset [726] by lowjoel
  • branches/eraser6/ShellExt/CtxMenu.cpp
  • branches/eraser6/ShellExt/CtxMenu.h

No need to typedef std::wstring nor std::list<std::wstring>

01:57 Changeset [725] by lowjoel
  • branches/eraser6/ShellExt/CtxMenu.cpp

Fixed an array out of bounds error.

01:56 Changeset [724] by lowjoel
  • branches/eraser6/ShellExt
  • branches/eraser6/ShellExt/ShellExt.rc
  • branches/eraser6/ShellExt/resource.h

Replace the resources file so that we include the localisations of the UI text.

01:36 Changeset [723] by lowjoel
  • branches/eraser6/ShellExt/ShellExt.vcproj

The vcproj was smart enough to include the Eraser icon...

01:35 Changeset [722] by lowjoel
  • branches/eraser6/ShellExt/CtxMenu.cpp
  • branches/eraser6/ShellExt/CtxMenu.h

Instead of hardcoding strings, I'm going to use resources to embed the different localisations, and calling LoadString? to retrieve the strings. This allows for internationalisation/localisation of the Shell extension text as well.

01:34 Changeset [721] by lowjoel
  • branches/eraser6/ShellExt/stdafx.h

I hate standard min/max macros. std::min/std::max is better!

01:04 Changeset [720] by lowjoel
  • branches/eraser6/ShellExt/CtxMenu.cpp
  • branches/eraser6/ShellExt/CtxMenu.h

-Renamed the variables to follow the rest of the project's conventions.
-Don't ownerdraw the menu when the drag-and-drop handler is called - somehow IContextMenu3 is not supported there.

12/5/2008:

23:53 Changeset [719] by lowjoel
  • branches/eraser6/ShellExt/CtxMenu.cpp

Fixed a memory leak when using GetSeparator?

23:47 Changeset [718] by lowjoel
  • branches/eraser6/Installer/DirectoryStructure.wxs

When referring to the Shell extension DLL use the File ID as the target so we won't have to worry about changing them in future.

23:46 Changeset [717] by lowjoel
  • branches/eraser6/Util/VolumeInfo.cs

Let the Win32 error propagate up to the executor code instead of a useless function name.

13:16 InstallingBetas edited by Joel
Wrong certificate link. (diff)
13:00 Ticket #21 (Create Verify) closed by trac-robot
This ticket was closed automatically by the system. It was previously set …
13:00 Ticket #61 (Html files and folders association.) closed by trac-robot
This ticket was closed automatically by the system. It was previously set …
13:00 Ticket #35 (Eraser leaving info after install) closed by trac-robot
This ticket was closed automatically by the system. It was previously set …
12:58 Changeset [716] by lowjoel
  • branches/eraser6/ShellExt/CtxMenu.cpp
  • branches/eraser6/ShellExt/CtxMenu.h

-Replaced the CEraserLPVERBS constants with an Actions enumeration
-Only display relevant actions when a recycle bin context menu is requested (unused space is irrelevant here)

04:37 Changeset [715] by lowjoel
  • branches/eraser6/ShellExt/CtxMenu.cpp
  • branches/eraser6/ShellExt/CtxMenu.h
  • branches/eraser6/ShellExt/ShellExt_i.c
  • branches/eraser6/ShellExt/ShellExt_i.h

Defined a GetHKeyPath function which translates the HKEY parameter from IShellExtInit::Initialize to a registry key name. This marks the beginning of us allowing our shell extension to be integrated into the Explorer Recycle Bin context menu (okay, it's a little hackish, but let's see how it plays out. All that I needed was a debugger into the shell extension, no other hacks :P)

04:35 Changeset [714] by lowjoel
  • branches/eraser6/ShellExt/ShellExt.vcproj

Don't automatically register the library: that's what installers are for.

12/4/2008:

19:00 Ticket #30 (Encrypted page file) closed by trac-robot
This ticket was closed automatically by the system. It was previously set …

12/3/2008:

01:36 Ticket #82 (Eraser command line without --method) created by Joel
Eraser should default to defaults for each item passed using the command …
01:35 Ticket #81 (Control shell integration through Eraser Settings) created by Joel
The Settings panel allows for control of Shell integration, which is …
01:34 Ticket #80 (Document Symbolic Link/Reparse point behaviour) created by Joel

12/2/2008:

15:26 Changeset [713] by lowjoel
  • branches/eraser6/Installer/DirectoryStructure.wxs
  • branches/eraser6/Installer/Eraser.wxs
  • branches/eraser6/Installer/Installer.wixproj
  • branches/eraser6/Installer/SignBin.bat

-Added the behemoth of a Eraser Shell registry registration code
-Sign the MSIs atop of everything else

14:06 Changeset [712] by lowjoel
  • branches/eraser6/ShellExt/ShellExt.vcproj
  • branches/eraser6/ShellExt/ShellExt_i.c
  • branches/eraser6/ShellExt/ShellExt_i.h

Place the shellext project's output in architecture-specific folders, since both win32 and x64 builds will coexist and be built together.

14:03 Changeset [711] by lowjoel
  • branches/eraser6/ShellExt/CtxMenu.cpp
  • branches/eraser6/ShellExt/CtxMenu.h
  • branches/eraser6/ShellExt/ShellExt.vcproj
  • branches/eraser6/ShellExt/ShellExt_i.c
  • branches/eraser6/ShellExt/ShellExt_i.h

-Settled the project files to build to the correct folders
-Fixed x64 compilation errors for the shell extension

13:58 Changeset [710] by lowjoel
  • branches/eraser6/Eraser.sln
  • branches/eraser6/ShellExt/ShellExt.vcproj
  • branches/eraser6/ShellExt/ShellExt_i.c
  • branches/eraser6/ShellExt/ShellExt_i.h

Integrated the ShellExt? project.

13:54 Changeset [709] by lowjoel
  • branches/erasershellext

Folder no longer needed after merge

13:51 Changeset [708] by lowjoel
  • branches/eraser6/ShellExt

Merge the Shell Extension branch.

13:46 Ticket #74 (Pause erasures) reopened by Joel
13:45 Changeset [707] by lowjoel
  • branches/erasershellext/cpp/EraserCtxMenu.aps
  • branches/erasershellext/cpp/ShellExt.vcproj
  • branches/erasershellext/cpp/ShellExt_i.c
  • branches/erasershellext/cpp/ShellExt_i.h

Final commit before merge.

13:42 Changeset [706] by lowjoel
  • branches/erasershellext/cpp/DllMain.def
  • branches/erasershellext/cpp/ShellExt.rgs
  • branches/erasershellext/cpp/resource.h

2nd Last CtxMenu?->ShellExt? change

13:36 Changeset [705] by lowjoel
  • branches/erasershellext/cpp/CtxMenu.cpp
  • branches/erasershellext/cpp/CtxMenu.h
  • branches/erasershellext/cpp/DllMain.cpp
  • branches/erasershellext/cpp/DllMain.idl
  • branches/erasershellext/cpp/ShellExt.rc
  • branches/erasershellext/cpp/stdafx.cpp

Spacing fixes.

13:32 Changeset [704] by lowjoel
  • branches/erasershellext/cpp/CtxMenu.h
  • branches/erasershellext/cpp/DllMain.cpp
  • branches/erasershellext/cpp/DllMain.h
  • branches/erasershellext/cpp/DllMain.idl
  • branches/erasershellext/cpp/ShellExt.rc
  • branches/erasershellext/cpp/ShellExt_i.c
  • branches/erasershellext/cpp/ShellExt_i.h
  • branches/erasershellext/cpp/resource.h

More CtxMenu?->ShellExt? renames.

13:25 Ticket #74 (Pause erasures) closed by cjax
fixed
13:23 Changeset [703] by lowjoel
  • branches/erasershellext/cpp/CtxMenu.h
  • branches/erasershellext/cpp/DllMain.cpp
  • branches/erasershellext/cpp/DllMain.def
  • branches/erasershellext/cpp/EraserCtxMenu.vcproj
  • branches/erasershellext/cpp/ShellExt.rc
  • branches/erasershellext/cpp/ShellExt.rgs
  • branches/erasershellext/cpp/ShellExt_i.c
  • branches/erasershellext/cpp/ShellExt_i.h

More generic name: ShellExt?.

13:04 Changeset [702] by lowjoel
  • branches/erasershellext/cpp

Ignore a few stuff.

13:04 Changeset [701] by lowjoel
  • branches/eraser6/Dialog Designs/eraser.icon.128.128.bmp
  • branches/eraser6/Dialog Designs/eraser.icons.16.16.bmp
  • branches/eraser6/Dialog Designs/eraser.icons.32.32.bmp

Removed these icons, we don't need them.

13:02 Changeset [700] by lowjoel
  • branches/erasershellext/cpp/CtxMenu.cpp
  • branches/erasershellext/cpp/CtxMenu.h
  • branches/erasershellext/cpp/EraserCtxMenu.vcproj
  • branches/erasershellext/cpp/EraserCtxMenu_i.c
  • branches/erasershellext/cpp/EraserCtxMenu_i.h
  • branches/erasershellext/cpp/stdafx.h

Implemented Erase command invocation (ie do something when the Eraser menu item is clicked.)

12:04 Changeset [699] by lowjoel
  • branches/erasershellext/cpp/CtxMenu.cpp
  • branches/erasershellext/cpp/CtxMenu.h
  • branches/erasershellext/cpp/EraserCtxMenu.rgs

Added m_szDestinationDirectory which is a string pointing to the path the selected files/folders were dropped to. This allows the shell extension to handle drag/drop requests also and allow the user to Secure Move from there as well.

11:45 Changeset [698] by lowjoel
  • branches/erasershellext/cpp/CtxMenu.cpp
  • branches/erasershellext/cpp/CtxMenu.h

-Combine the selected files/directories/drives list to a single list, the type of command line they get to will be decided when the command line is generated
-Only display submenu items if they apply to the selected list of items: don't display Erase Unused Space if no drives are selected (or if one drive is and the others aren't, like in reparse points)

11:43 Changeset [697] by lowjoel
  • branches/erasershellext/cpp/EraserCtxMenu.rgs
  • branches/erasershellext/cpp/EraserCtxMenu_i.c
  • branches/erasershellext/cpp/EraserCtxMenu_i.h

Associate the extension with every type of shell object.

11:30 Ticket #44 (Allow Erasure of URLs) closed by Joel
fixed: Fixed in v6, attached image.
10:27 Changeset [696] by lowjoel
  • branches/erasershellext/cpp/CtxMenu.cpp
  • branches/erasershellext/cpp/CtxMenu.h
  • branches/erasershellext/cpp/DllMain.cpp
  • branches/erasershellext/cpp/DllMain.h
  • branches/erasershellext/cpp/DllMain.idl
  • branches/erasershellext/cpp/EraserCtxMenu.rc
  • branches/erasershellext/cpp/EraserCtxMenu.vcproj
  • branches/erasershellext/cpp/resource.h
  • branches/erasershellext/cpp/stdafx.cpp
  • branches/erasershellext/cpp/stdafx.h
  • branches/erasershellext/cpp/targetver.h

Added copyright headers and fixed a few minor stuff (#pragmas, etc)

10:23 Changeset [695] by lowjoel
  • branches/erasershellext/cpp/EraserShell.cpp
  • branches/erasershellext/cpp/EraserShell.h

Got rid of the .NET class.

10:12 Changeset [694] by lowjoel
  • branches/erasershellext/cpp/DllMain.cpp
  • branches/erasershellext/cpp/DllMain.def
  • branches/erasershellext/cpp/DllMain.h
  • branches/erasershellext/cpp/DllMain.idl
  • branches/erasershellext/cpp/EraserCtxMenu.cpp
  • branches/erasershellext/cpp/EraserCtxMenu.vcproj

Rename all the EraserCtxMenu? files to DllMain? since that's what they do - provide the entry point. Or are associated with library stuff.

10:10 Changeset [693] by lowjoel
  • branches/erasershellext/cpp/Dll_Main.cpp
  • branches/erasershellext/cpp/Dll_Main.h

Case changing renames.

10:05 Changeset [692] by lowjoel
  • branches/erasershellext/cpp/CtxMenu.cpp
  • branches/erasershellext/cpp/EShll.txt
  • branches/erasershellext/cpp/EraserCtxMenu.vcproj

Move the eshll idea to a separate text file and indented the namespace code.

10:02 Changeset [691] by lowjoel
  • branches/erasershellext/cpp/CtxMenu.cpp
  • branches/erasershellext/cpp/CtxMenu.h

-Completed the icon implementation
-Move the GetSeparator? function to the CCtxMenu class

08:23 Changeset [690] by lowjoel
  • branches/erasershellext/cpp/CtxMenu.cpp
  • branches/erasershellext/cpp/CtxMenu.h
  • branches/erasershellext/cpp/EraserCtxMenu.rc
  • branches/erasershellext/cpp/EraserCtxMenu_i.c
  • branches/erasershellext/cpp/EraserCtxMenu_i.h

Implement IContextMenu3 instead: that allows us to ownerdraw our menu icons.

08:17 Changeset [689] by lowjoel
  • branches/erasershellext/cpp/dllmain.cpp
  • branches/erasershellext/cpp/dllmain.h

Move CEraserCtxMenuApp to the header; we need it to get the module instance handle (the Afx* functions return NULL?)

08:16 Changeset [688] by lowjoel
  • branches/erasershellext/cpp/stdafx.h

I hate this min/max macros.

01:45 Changeset [687] by lowjoel
  • branches/erasershellext/cpp/CtxMenu.cpp
  • branches/erasershellext/cpp/CtxMenu.h
  • branches/erasershellext/cpp/EraserCtxMenu_i.c
  • branches/erasershellext/cpp/EraserCtxMenu_i.h
  • branches/erasershellext/cpp/EraserCtxMenu_p.c
  • branches/erasershellext/cpp/dlldata.c

Code cleanups; removed unused/unreferenced types

12/02/08:

01:30 Changeset [686] by lowjoel
  • branches/erasershellext/cpp/CtxMenu.h
  • branches/erasershellext/cpp/EraserCtxMenu.vcproj

Removed the last remnants of managed code. Finally.

01:25 Changeset [685] by lowjoel
  • branches/erasershellext/cpp/CtxMenu.h
  • branches/erasershellext/cpp/CtxMenu.rgs
  • branches/erasershellext/cpp/EraserCtxMenu.rc
  • branches/erasershellext/cpp/EraserCtxMenu.rgs
  • branches/erasershellext/cpp/EraserCtxMenu.vcproj
  • branches/erasershellext/cpp/resource.h

Combined CtxMenu?.rgs with EraserCtxMenu?.rgs

01:17 Changeset [684] by lowjoel
  • branches/erasershellext/cpp/CtxMenu.cpp
  • branches/erasershellext/cpp/CtxMenu.h
  • branches/erasershellext/cpp/EraserCtxMenu.idl
  • branches/erasershellext/cpp/EraserCtxMenu.vcproj
  • branches/erasershellext/cpp/EraserCtxMenu_i.c
  • branches/erasershellext/cpp/EraserCtxMenu_i.h

Removed more unused classes.

01:15 Changeset [683] by lowjoel
  • branches/erasershellext/cpp/EraserCtxMenu.cpp
  • branches/erasershellext/cpp/SecureMove1.resx
  • branches/erasershellext/cpp/compreg.cpp
  • branches/erasershellext/cpp/compreg.h
  • branches/erasershellext/cpp/dlldatax.c
  • branches/erasershellext/cpp/dlldatax.h
  • branches/erasershellext/cpp/dllmain.cpp

Removed unused classes and the Proxy code (no idea what it was for...) but things still work.

12/01/08:

23:21 Changeset [682] by lowjoel
  • branches/website/Templates/Eraser.dwt
  • branches/website/announcements/20081201.html

Link fix.

14:45 Changeset [681] by cjax
  • branches/eraser6/Dialog Designs/eraser.icon.128.128.bmp
  • branches/eraser6/Dialog Designs/eraser.icons.16.16.bmp
  • branches/eraser6/Dialog Designs/eraser.icons.32.32.bmp
  • branches/eraser6/Dialog Designs/eraser.icons.ico

Usefull icons and formats

14:11 Changeset [680] by cjax
  • branches/erasershellext/cpp/CtxMenu.cpp
  • branches/erasershellext/cpp/EraserCtxMenu.vcproj
14:03 Changeset [679] by cjax
  • branches/erasershellext/cpp/CtxMenu.cpp
  • branches/erasershellext/cpp/CtxMenu.h
  • branches/erasershellext/cpp/EraserCtxMenu.cpp
  • branches/erasershellext/cpp/EraserCtxMenu.def
  • branches/erasershellext/cpp/EraserCtxMenu.idl
  • branches/erasershellext/cpp/EraserCtxMenu_i.c
  • branches/erasershellext/cpp/EraserCtxMenu_i.h
  • branches/erasershellext/cpp/EraserCtxMenu_p.c
  • branches/erasershellext/cpp/SecureMove.h
  • branches/erasershellext/cpp/compreg.cpp
  • branches/erasershellext/cpp/dlldatax.c
  • branches/erasershellext/cpp/stdafx.cpp

native ctx menu

10:58 Changeset [678] by lowjoel
  • branches/erasershellext/cpp/CtxMenu.cpp
  • branches/erasershellext/cpp/CtxMenu.h

Removed more Managed code and formatted the code to look a little prettier.

10:56 Changeset [677] by lowjoel
  • branches/erasershellext/cpp/Eraser.Manager.h
  • branches/erasershellext/cpp/Eraser.Util.h
  • branches/erasershellext/cpp/Eraser.h
  • branches/erasershellext/cpp/EraserCtxMenu.vcproj
  • branches/erasershellext/cpp/ReadMe.txt
  • branches/erasershellext/cpp/SecureMove1.cpp
  • branches/erasershellext/cpp/SecureMove1.h

Removed the /clr switch; we cannot use the CLR in Explorer to be a Good Citizen.

10:05 Ticket #40 (Form a documentation team) reopened by Joel
10:05 Changeset [676] by lowjoel
  • branches/website/Templates/Eraser.dwt
  • branches/website/announcements/20081201.html
  • branches/website/contributing.html
  • branches/website/index.php
  • branches/website/reviews.html

Download caching fix; I keyed in the wrong URL to cache.

10:02 Changeset [675] by lowjoel
  • branches/eraser6/Installer/Bootstrapper/Bootstrapper.cpp

Warning fix.

10:02 Changeset [674] by lowjoel
  • branches/eraser6/Version.rc
  • branches/eraser6/Version.wxs

Updated properties.

10:00 Changeset [673] by lowjoel
  • branches/eraser6/Eraser.sln
  • branches/eraser6/Installer/Bootstrapper/Bootstrapper.rc
  • branches/eraser6/Installer/Eraser.wxs
  • branches/eraser6/Version.rc
  • branches/eraser6/Version.wxs

Define all version constants in the new Solution items, Version.cs, rc and wxs. This centralises all version information so we know where to update them on release.

09:44 Changeset [672] by lowjoel
  • branches/eraser6/Manager/Plugins.cs

Checking the certificate alone for validity is enough, don't check to root because it may be revoked!

09:41 Changeset [671] by lowjoel
  • branches/website/Templates/Eraser.dwt
  • branches/website/announcements/20081201.html
  • branches/website/contributing.html
  • branches/website/index.php
  • branches/website/reviews.html

Trac link fixed.

09:25 Changeset [670] by lowjoel
  • branches/website/index.php

Donations aren't accepted yet; we haven't agreed how to do it...

09:25 Changeset [669] by lowjoel
  • branches/website/images/news_bg.gif
  • branches/website/images/news_h3.gif
  • branches/website/index.php
  • branches/website/style.css

More descriptive css style rule names.

09:22 Changeset [668] by lowjoel
  • branches/website/images/doyouknow_bg.gif
  • branches/website/images/doyouknow_h3.gif
  • branches/website/images/readings_bg.gif
  • branches/website/images/readings_h3.gif
  • branches/website/style.css

New set of icons for the right side.

09:08 Changeset [667] by lowjoel
  • branches/website/index.php

95 isn't supported, and Server 2008 is.

09:04 Changeset [666] by lowjoel
  • branches/website/index.php

Forgot index.php

09:02 Changeset [665] by lowjoel
  • branches/website/Templates/Eraser.dwt
  • branches/website/announcements/20081201.html
  • branches/website/contributing.html
  • branches/website/images/btn_download.gif
  • branches/website/index.php
  • branches/website/reviews.html

Fixed the link and Dennis' resized download link.

08:34 Changeset [664] by lowjoel
  • branches/website/Templates/Eraser.dwt
  • branches/website/announcements/20081201.html
  • branches/website/contributing.html
  • branches/website/images/btn_download.gif
  • branches/website/images/btn_download_hov.gif
  • branches/website/images/btn_eraser.gif
  • branches/website/images/btn_eraser_hov.gif
  • branches/website/images/btn_forum.gif
  • branches/website/images/btn_forum_hov.gif
  • branches/website/images/btn_home.gif
  • branches/website/images/btn_home_hov.gif
  • branches/website/images/btn_methods.gif
  • branches/website/images/btn_methods_hov.gif
  • branches/website/images/btn_trac.gif
  • branches/website/images/btn_trac_hov.gif
  • branches/website/index.php
  • branches/website/reviews.html

Added new Navigation buttons and added the download counter to the downloads section.

04:41 Ticket #62 (Eraser Logo on Trac Pages) closed by Joel
fixed
04:41 Changeset [663] by lowjoel
  • branches/website/Templates/Eraser.dwt
  • branches/website/announcements/20081201.html
  • branches/website/contributing.html
  • branches/website/images/template_v1.png
  • branches/website/images/template_v2.png
  • branches/website/index.html
  • branches/website/reviews.html

We release.

03:56 Changeset [662] by lowjoel
  • branches/website/updates/index.php

Server name apparently doesn't include http://

03:45 Changeset [661] by lowjoel
  • branches/eraser6/DefaultPlugins/Strings.en.resx
  • branches/eraser6/Eraser/Strings.NL.resx
  • branches/eraser6/Eraser/Strings.en.resx
  • branches/eraser6/Installer/Bootstrapper/Bootstrapper.rc
  • branches/eraser6/Installer/Eraser.wxs
  • branches/eraser6/Version.cs

Okay, RC1 is definitely revision 661.

03:39 Changeset [660] by lowjoel
  • branches/website/download.php
  • branches/website/downloads
  • branches/website/updates/index.php

Added support for local downloads, where the downloads are hosted on the Eraser website itself (sensitive stuff, like certificates etc.)

03:37 InstallingBetas edited by Joel
Windows is a trademark. (diff)
03:36 InstallingBetas edited by Joel
Added the download link. (diff)
03:15 InstallingBetas edited by Joel
Corresponding Vista instructions. (diff)
03:04 InstallingBetas edited by Joel
Added a note about CRLs and links to the relevant install sections. (diff)

12/1/2008:

03:02 InstallingBetas edited by Joel
Added XP install instructions (diff)
02:30 InstallingBetas edited by Joel
Sections laid out. (diff)
02:09 InstallingBetas created by Joel
The first draft, with the introduction.
01:11 Changeset [659] by lowjoel
  • branches/eraser6/Eraser/UpdateForm.cs

Darn, let my local testing server slip into code.

01:09 Changeset [658] by lowjoel
  • branches/website/reviews.html

Spacing fix.

01:05 Changeset [657] by lowjoel
  • branches/website/favicon.ico

Favicons rock.

01:05 Changeset [656] by lowjoel
  • branches/website/images/Trac.png
  • branches/website/images/index.html

-Little index page so the directory isn't listed
-Trac header icon

00:43 Changeset [655] by lowjoel
  • branches/eraser6/DefaultPlugins/EraseDoD.cs
  • branches/eraser6/DefaultPlugins/Strings.en.resx
  • branches/eraser6/DefaultPlugins/Strings.nl.resx
  • branches/eraser6/DefaultPlugins/Strings.resx
  • branches/eraser6/Eraser/AboutForm.cs
  • branches/eraser6/Eraser/Strings.NL.resx
  • branches/eraser6/Eraser/Strings.en.resx
  • branches/eraser6/Eraser/Strings.resx

Updated internationalisations

00:22 Changeset [654] by cjax
  • branches/eraser6/Util/VolumeInfo.cs

Some minor bug changes

11/30/2008:

23:39 Changeset [653] by cjax
  • branches/eraser6/DefaultPlugins/EraseDoD.cs

The name of the algorithms was too long for Eraser Interactive shell. So I have changed an 'and' with '&'.

23:33 Ticket #79 (Code path optomisation) created by cjax
If you walk through the current code it will be observed that we create a …
22:23 Changeset [652] by cjax
  • branches/eraser6/Eraser/AboutForm.cs

Change my status to what agreed with Garrett

16:00 Milestone Eraser Website completed
Get the v6 Website up and working!
13:39 Changeset [651] by lowjoel
  • branches/eraser6/Util/KernelAPI.cs

64-bit fix.

12:52 Changeset [650] by cjax
  • branches/eraser6/Eraser/AboutForm.cs

Change my status to what agreed with Garrett

12:41 Ticket #77 (Explorer context menu to be in a submenu) closed by Joel
fixed
12:32 Ticket #68 (Task:: Eraser Files and Directories) closed by Joel
invalid
11:00 WikiStart edited by Joel
Add an InstallingBetas placeholder (diff)
10:50 Changeset [649] by lowjoel
  • branches/eraser6/Installer/Bootstrapper/Bootstrapper.rc
  • branches/eraser6/Installer/Eraser.wxs
  • branches/eraser6/Manager/Plugins.cs
  • branches/eraser6/Version.cs

Version bump.

10:34 CompilingEraser edited by Joel
Forgot to include the step to create the installer archive. (diff)
10:28 Changeset [648] by lowjoel
  • branches/website/download.php

Download thingy so we can list downloads as popular or something.

10:22 Changeset [647] by lowjoel
  • branches/eraser6/Eraser/UpdateForm.cs

Progress text to the wrong label (oops)

10:09 Changeset [646] by lowjoel
  • branches/website/updates/index.php

Okay, I finally tested the code.

09:38 Changeset [645] by lowjoel
  • branches/website/downloads/.htaccess
  • branches/website/updates/index.php

Updated the schema a little.

09:33 Changeset [644] by lowjoel
  • branches/website/scripts
  • branches/website/scripts/.htaccess

Folder holding all the server side stuff.

09:32 Changeset [643] by lowjoel
  • branches/website/updates
  • branches/website/updates/index.php

Moved the Database file to the Scripts folder, for which access is non-accessible to the public.

09:30 Changeset [642] by lowjoel
  • branches/website/contributing.html
  • branches/website/reviews.html

Fixed the hover image paths for the navigation bar

09:17 Ticket #32 (Default Settings) closed by Joel
fixed
09:15 Ticket #78 (Erase whole drive) created by rocko
Keep track of files already present, move them using the Defrag APIs, then …
09:14 Ticket #77 (Explorer context menu to be in a submenu) created by Overwriter
http://eraser.wiki.sourceforge.net/Eraser+v6
09:13 Ticket #76 (Recycle bin context menu to be in submenu) created by Joel
http://eraser.wiki.sourceforge.net/Eraser+v6
09:13 Ticket #75 (User-based erasure control) created by OGG
Allow administrators to define certain tasks system-wide and allow users …
09:13 Ticket #74 (Pause erasures) created by OGG
http://eraser.wiki.sourceforge.net/Eraser+v6
09:12 Ticket #73 (Parallel erasures of different physical drives) created by Overwriter
http://eraser.wiki.sourceforge.net/Eraser+v6
09:12 Ticket #72 (Block the use of Empty Recycle Bin so that users can only securely erase ...) created by Overwriter
http://eraser.wiki.sourceforge.net/Eraser+v6
09:11 Ticket #71 (Clean up of drives in Windows) created by Joel
(think DBAN, but in Windows) …
09:11 Ticket #70 (Cleaning up of privacy leaks) created by Joel
temporary internet files, etc. Think open-source CCleaner From …
09:10 Ticket #69 (Erasure of old MFT records on demand) created by Overwriter
From http://eraser.wiki.sourceforge.net/Eraser+v6
08:23 Changeset [641] by lowjoel
  • branches/eraser6/Manager/Plugins.cs

Actually verify the X509 certificate if the assembly contains one.

08:22 Changeset [640] by lowjoel
  • branches/eraser6/Installer/Bootstrapper/Bootstrapper.cpp

Compilo.

07:49 Changeset [639] by lowjoel
  • branches/eraser6/Installer/Bootstrapper/Bootstrapper.vcproj

-Run the bootstrapper as administrator
-Don't sign the bootstrapper, it will be damaged after adding the installer 7zip

07:48 Changeset [638] by lowjoel
  • branches/eraser6/Eraser.sln
  • branches/eraser6/Installer/SignBin.bat

Sign the Language resources too

07:43 Changeset [637] by lowjoel
  • branches/eraser6/Eraser.sln
  • branches/eraser6/Installer/Bootstrapper/Bootstrapper.cpp
  • branches/eraser6/Installer/Bootstrapper/Bootstrapper.h
  • branches/eraser6/Installer/Bootstrapper/Main.cpp

I've rewrote the packaging code to support Authenticode signing; the setup files are stored as Resources instead of just appending to stream which will be corrupted by the Authenticode process.

03:48 Changeset [636] by lowjoel
  • branches/eraser6/Eraser/Eraser.csproj
  • branches/eraser6/Eraser/SettingsPanel.Designer.cs
  • branches/eraser6/Eraser/SettingsPanel.cs
  • branches/eraser6/Eraser/SettingsPanel.resx
  • branches/eraser6/Manager/Plugins.cs

Display a Key icon next to authenticode-signed binaries

03:24 Changeset [635] by lowjoel
  • branches/eraser6/Installer/Bootstrapper/Bootstrapper.vcproj

Forgot to commit the vcproj

03:23 Changeset [634] by lowjoel
  • branches/eraser6/Eraser/SettingsPanel.cs

Don't assume that plugins are loaded when their context menu is opened. This fixes a crash.

03:23 Changeset [633] by lowjoel
  • branches/eraser6
  • branches/eraser6/DefaultPlugins/DefaultPlugins.csproj
  • branches/eraser6/Eraser.sln
  • branches/eraser6/Eraser/Eraser.csproj
  • branches/eraser6/Installer/Installer.wixproj
  • branches/eraser6/Installer/SignBin.bat
  • branches/eraser6/Manager/Manager.csproj
  • branches/eraser6/Util/Util.csproj

Following the discussion that Authenticode should also be used when verifying plugins on first load, I've now changed the Compiling Eraser instructions http://eraser.heidi.ie/trac/wiki/CompilingEraser?version=4 so that a Strong Name Key file is used without password protection by default; Authenticode keys will be assumed to be in the Solution root folder, and the release binaries will be signed before the installer is compiled. Bootstrapper will be signed after linking.

03:18 CompilingEraser edited by Joel
Strong Name signing procedure change: enforce the fact that the projects … (diff)

11/29/2008:

14:04 Ticket #68 (Task:: Eraser Files and Directories) created by cjax
For shell extension the user might drag files and directories for erasure. …
13:10 Changeset [632] by lowjoel
  • branches/eraser6/EraserL

Old folder.

11:41 Changeset [631] by lowjoel
  • branches/eraser6/Eraser/Program.cs

Create the Client and Library instances before the Console class is given control.

11:22 Changeset [630] by lowjoel
  • branches/eraser6/Manager/RemoteExecutor.cs

Support null return values.

11:13 Changeset [629] by lowjoel
  • branches/eraser6/Manager/RemoteExecutor.cs

-RemoteHeader? is more aptly named RemoteRequest?
-Documented a few of the classes and functions

10:59 Changeset [628] by lowjoel
  • branches/eraser6/Manager/RemoteExecutor.cs

-Removed the Run function from the RemoteExecutor? classes since they are for DirectExecutor? to know when things are running and therefore should be called by the local instance, never remotely.
-Transfer bytes across the pipe, not the streams
-Make the RemoteHeader? constructor take a function and a byte array, should save a few lines of code
-Fixed the pesky End of Stream Reached before deserialisation was complete error

09:02 Changeset [627] by lowjoel
  • branches/eraser6/Manager/RemoteExecutor.cs

-Removed all the async pipe operations: they're adding unnecessary complexity which brings benefits but we aren't using
-Hoisted the RemoteHeader? class and Function enum to the Manager namespace since it is used by both client and server

08:47 Changeset [626] by lowjoel
  • branches/eraser6/Manager/RemoteExecutor.cs

Got the RemoteExecutor? instances to talk to each other.

08:37 Ticket #63 (Write plugin searching/dynamic retrieval code for website.) closed by Joel
fixed: Completed in r621
08:36 Ticket #64 (Comandline) closed by Joel
fixed: Implemented in r625.
08:35 Changeset [625] by lowjoel
  • branches/eraser6/Eraser/Program.cs

Completed the command line frontend to Eraser. Yay!

08:32 Changeset [624] by lowjoel
  • branches/eraser6/Eraser/Program.cs

Extracted the Command* functions to the CommandLineProgram? class, since it really is starting to have many functions and helper classes associated with it.

06:51 Changeset [623] by lowjoel
  • branches/eraser6/Eraser/UpdateForm.cs

Eraser v6 updates will be at http://eraser.heidi.ie, like the rest of the Eraser website.

06:43 WikiStart edited by Joel
Link to the main page (diff)
04:20 Changeset [622] by lowjoel
  • branches/website/updates/index.php

Added the updates Web interface.

03:42 Changeset [621] by lowjoel
  • branches/website/updates

The updater server-side code.

03:41 Changeset [620] by lowjoel
  • branches/website/Templates
  • branches/website/announcements
  • branches/website/contributing.html
  • branches/website/downloads
  • branches/website/images
  • branches/website/images/banner.jpg
  • branches/website/images/bg.gif
  • branches/website/images/btn_download.gif
  • branches/website/images/btn_download_hov.gif
  • branches/website/images/btn_eraser.gif
  • branches/website/images/btn_eraser_hov.gif
  • branches/website/images/btn_forum.gif
  • branches/website/images/btn_forum_hov.gif
  • branches/website/images/btn_home.gif
  • branches/website/images/btn_home_hov.gif
  • branches/website/images/btn_methods.gif
  • branches/website/images/btn_methods_hov.gif
  • branches/website/images/feed.png
  • branches/website/images/footer_bg.jpg
  • branches/website/images/h3_bg.gif
  • branches/website/images/header_bg.jpg
  • branches/website/images/ico_download.gif
  • branches/website/images/intro_bg.gif
  • branches/website/images/intro_h3.gif
  • branches/website/images/links_bg.gif
  • branches/website/images/links_h3.gif
  • branches/website/images/nav_bg.gif
  • branches/website/images/nav_h3.gif
  • branches/website/images/news_bg.gif
  • branches/website/images/news_h3.gif
  • branches/website/images/paypal.jpg
  • branches/website/images/template_v1.jpg
  • branches/website/images/template_v2.jpg
  • branches/website/images/usr_admin.gif
  • branches/website/images/usr_designer.gif
  • branches/website/images/usr_developer.gif
  • branches/website/nbproject
  • branches/website/nbproject/project.properties
  • branches/website/nbproject/project.xml
  • branches/website/reviews.html
  • branches/website/scripts.js
  • branches/website/style.css

Initial commit of the website.

02:52 Changeset [619] by cjax
  • branches/eraser6/Manager/RemoteExecutor.cs

Latest version

01:59 Changeset [618] by lowjoel
  • branches/website

Created a versioning directory for the new Eraser Website

11/28/2008:

13:00 Ticket #41 (Eraser problem with long filenames) closed by trac-robot
This ticket was closed automatically by the system. It was previously set …
12:42 Changeset [617] by lowjoel
  • branches/eraser6/Eraser/Program.cs

-Don't ask for users to press a key to continue if the user specified Quiet mode
-List the installed GUIDs of erasure methods when querymethods is used

12:27 Changeset [616] by lowjoel
  • branches/eraser6/Eraser/Program.cs

Allow the user to specify that he wants a quiet session.

Note: See TracTimeline for information about the timeline view.