Dial-a-fix v1.0 is being rewritten in Delphi from ground zero.

Dial-a-fix status: 25% complete
Labor day final projection: 35% complete

Also: need money; please send donations!

Every step forward seems like a step backward. I used to have a 1.0 design (which I posted about before) that was really neat, but I had to keep working on the current beta line to keep it maintained (and now it's fallen into disrepair). Then I became very busy at work and didn't even have time to answer any of my emails (about 500) for about a month. I apologize if I haven't answered your email. I will get to it, actually, starting Saturday morning. I'll answer all my emails and then begin working on Dial-a-fix again, because it needs overhauling (again – did I say "again" yet?). Every time I plop down a foundation (like that 1.0 teaser post), it comes up short and I have to start over again.

Again. Again. There, I've used it so much it's no longer a word.

Good thing Tarun is over there at the Lunarsoft.net forums helping out with Dial-a-fix support, or else everyone would be in the dark.

Oh yeah and Ninja Rope, I am still going to use ntdel as planned and The Notifier will live once again. Too bad it dies with Vista; Vista doesn't have Winlogon\Notify keys. Edit: Actually, Vista does. They're just in a different place and have a different syntax. Take a look at:

HKEY_LOCAL_MACHINE
SYSTEM
CurrentControlSet
Control
Winlogon
Notifications
Components

Vista build 5728 publicly released

I lost the Dial-a-fix special treatment list (STL) in a tragic accident (I actually lost my entire address book). If you'd like to be put back on it, email me at dial-a-fix @ this domain and I will add you. It will be a while before another DAF announcement, though. If you'd like to be notified of any new software release I make (and there will be a few coming up), then let me know that in your email.

edit: I got the STL back via Tarun, so there's no problem there. However, if you'd like to be added, now is the time to ask.

I suggest that any remaining people using Dial-a-fix v0.57.7 should migrate to the current v0.60 beta until I have a public build of v1.0. No one should really be using v0.57.7 any more. There are issues with v0.57.7 that have already been resolved (such as Access Violations in version.dll/the mscoree.dll hang) and they are listed on the wiki in the Known Issues section. Please be familiar with this.

I'm going to redesign the log pane again – it looks neat as it is, but it is not productive enough for my tastes, and it takes up a lot of space in the code. I'm going to be adding Unicode capabilities and translation capabilities as well, and those are going to add even more to the code.

After all is said and done, I expect Dial-a-fix v1.0 to be over 2 megabytes (!). Since Dial-a-fix contains no shared code, and the only other penalty (that I know of – unless I'm mistaken) for PE compression is a slower start up time, I'm going to continue to use UPX to pack Dial-a-fix's .exe. I expect this to cut the size down more than half.

So, you've been wondering what I've been doing for the past month and-a-half. Well, I've been redesigning Dial-a-fix. I have started it completely over, and began re-coding it from the ground up.

Here's some preview teaser shots of what it's going to be like, and what's complete so far. I have also listed percentages of completion for each section.

Overall new features

  1. Resizable, maximizable dialog
  2. Single-form design
  3. Nicer graphics everywhere

Startup – 80% complete

Immediately upon startup of Dial-a-fix, it begins checking your system for common/immediate problems. The following checks are performed, in this order:

  1. A log of your system info is created, initializing the log pane – 100% complete
  2. Your %TEMP% environment variable is checked against several critical folders around your system, to ensure that you don't empty a valuable directory by mistake – 0% (not coded yet but won't take long)
  3. Services important to Dial-a-fix, including their dependencies, are queried (to make sure they exist) and changed accordingly/automatically (i.e., if your BITS service is set to Disabled, DAF sets it to Automatic). If a critical service doesn't exist, Dial-a-fix disables the part of itself that deals with starting/stopping that service. – 80% complete
  4. Important utilities are checked for existence (regedit.exe, net.exe, net1.exe, msiexec.exe, etc) – %0 (not coded yet)
  5. The OLE32 registration section of your registry is checked for consistency (applicable platforms only). – %0 (not coded yet)
  6. Then, your registry is scanned for restrictive policies. If there are any, then the status bar will list how many were found, and the Policies tab will begin blinking to remind you to click the Policies tab (a feature for non-technical users who have never used DAF). – 100% complete

Main tab – 20% complete

Main tab

New features:

  1. Actions area, with quick access to frequently used system utilities (Event Viewer, Regedit, Services, etc). Certain buttons (such as Services) will not show in Win98/Me, obviously.
  2. "Invert states" button in Registration center
  3. Nice section icons
  4. Much smarter code

Tools tab – 0% (not coded yet)

No screenshot yet as it is blank. Besides the DLL registration function used throughout DAF, this tab will take the longest to complete.

  • Scriptable! Use real Object Pascal language/syntax to create your own tools and load them into Dial-a-fix

Policies tab – 100% complete

Main tab (click it to see it unscaled)

  1. Actions area, with new dialog expansion button (expand/contract dialog by 2x for easy policy viewing)
  2. Nicer icons

Log pane – 80% complete

Main tab (click it to see it unscaled)

  1. Pseudo HTML-enabled log pane allows for graphics, colored text, formatting
  2. Saves plaintext to .txt file or copy plaintext to clipboard – 0% (not coded yet)
  3. Quick macros for Tool writers to format their log pane messages in a standard way
  4. "Undock" the log pane from its tab and move it around in its own window – 0% (not coded yet)

Help and About tabs – 0%

Nothing here yet either, but I hope to have a nice help system soon. It'll be the last part I do before I release it into the wild.

It will probably take about 2 more months for me to completely finish this. Obviously, a lot of the design in these screenshots is subject to change.

TheNotifier is now 0.0.0.33 – its ListViews and registry access functions now support Unicode. (I had to get the framework in general down before I switched to Unicode – it was just easier that way.) That's all that has changed.

NOTE: Do not redistribute TheNotifier. It is for personal testing only.

Download: TheNotifier v0.0.0.26 (~198KB, *.exe)

As explained previously, this is a prototype app I'm working on which will help me (and eventually you) fight certain malware attacks. At the moment, it just allows you look at what's going on.

As always, comment here, or post at the "Lunarsoft.net DjLizard.net software support forum" (preferred).

Changelog:

* Moved to tabbed interface
* Added more specific filtering functions (None, known, or Microsoft)
* Added AppInit_DLLs tab with basic support (very alpha) – more to come
* 'Jump to key' when on the AppInit_DLLs tab will take you to the 'Windows' key (where AppInit_DLLs is)
* Added the following known-good Notify entries: avldr, Caveo, ckpNotify, Command AntiVirus Download, ComPlusSetup, CwWLEvent, dimsntfy, DPWLN, FolderGuard, GoToMyPC, loginkey, MetaFrame, nwprovau, OPXGina, PCANotify, PFW, ppeclt, PRISMAPI.DLL, PRISMGNA.DLL, psfus, QConGina, RAinit, RegCompact, SABWinLogon, SDNotify, Sebring, T3Notify, TabBtnWL, Timbuktu Pro, tpfnf2, tpgwlnotify, tphotkey, VESWinlogon, WB, WBSrv, Zboard, zsnotify

I have a list of many known-good AppInit_DLLs so you don't have to let me know about those yet.

Also, I have a lot of work left on DAF before I can release another update, so don't worry.