Programming question about Progress Information


New Member
I am writing a new GUI for a light weight version of Eraser in Delphi.

The objective of this application is that it will be small, simple, and won't use the registry or any files other than eraser.dll so that it can be easily run from USB drives, etc.

I have everything pretty much done, except I can't figure out how you display erase progress.

Do you have to launch the erase process in a thread (eraserStart) in order to display progress, or is there some way that you display progress without using a thread (eraserStartSync)?

I see the notification functions, eraserSetWindow, etc., but I'm not sure how those are used. I've looked through the C++ code for Eraser, including SchedulerView.cpp, for examples, but these don't apply to exactly what I'm doing.

So, my question is:

1) If you want to report progress during the erase, do you have to launch the erase in a thread?
2) If no, how do you display progress without using threads?

Also, I have looked through the dll code and this does not seem to be the case, but is there a default progress window that can be displayed during the erase?

In other words, the dll will pop-up a default Options forms, why not also have a progress form and have a method of launching the erase that will show the built in erase progress form?

Anyway, thank you in advance.