Jump to content
LaptopVideo2Go Forums

"Dial-a-fix" - the XP repair tool you've been waiting for

Guest ®®®

Recommended Posts

Most informative site of the year :) http://djlizard.net :P

Dial-a-fix is a collection of 'known fixes' that repair common Windows issues, such as Windows Update, SSL, Microsoft Installer, and other problems.

Most of the fixes are found in Microsoft Knowledgebase articles. When you see a list of DLLs that Microsoft is telling you to use REGSVR32 on, chances are they are already included in Dial-a-fix. You can figure out what most checkboxes do by hovering over them with your mouse. The tooltip describes what is going on (usually in command-line terminology). For instance, if you hover over 'Stop service' under the WU/WUA section, it tells you that it is performing the following commands (just as you could type them yourself in CMD.EXE) : net stop WUAUSERV and net stop BITS. I've tried to put these tooltips wherever possible. If there is a checkbox that is not obvious, please let me know and I will do my best to describe it in future versions of the program. Please note that by itself, Dial-a-fix can pose no harm to your system, even if your system is working properly. All this program does, in a nutshell, is: stop services, install selected software, register DLLs, restart services, and remove rogue policies.

Dial-a-fix covers:

15 Windows update DLLs (including XML)

15 SSL/HTTPS/Cryptography DLLs

14 ActiveX/COM objects

3 Control panel applets

4 Direct* DLLs

7 run-time DLLs

64 Explorer/IE/OE/shell/WMP DLLs


88 Restrictive policies



Link to comment
Share on other sites

What!? We're not THE most informative site? BANNED! :)

:) Rene :P

Link to comment
Share on other sites

Yet another great discovery, Rene! Thanks!


Link to comment
Share on other sites

We still can get the crown :) I count 11 months left for this year :P

Banned? Again!? :)

Wait until i login again -> :(

Nevertheless we defenitely provide the best Smilies.


Link to comment
Share on other sites

Btw a lot of the 'Dial-a-Fix' regsvr32 /u commands are present in my MRBOSS (Maintenance and Repair Boot OS

Smart) project batch (Teraphy, remember Batch File number 3 : '3MR.cmd' ?), so this is why i can only recommend using

'Dial-a-fix' for XP Repair reasons. And best thing is it's a standalone .EXE

No installation orgy needed. Free, portable and perfect for USB stick usage.

As you can see the tool covers parts of what you would have get with MRBOSS:

@echo off
:: KB836973
regsvr32 /s[tab][/tab]  /u   actxprxy.dll
regsvr32 /s[tab][/tab][tab][/tab]  actxprxy.dll
regsvr32 /s /i	/u   browseui.dll
regsvr32 /s /i[tab][/tab]    browseui.dll
regsvr32 /s[tab][/tab]  /u   dxmasf.dll
regsvr32 /s[tab][/tab][tab][/tab]  dxmasf.dll
regsvr32 /s /i	/u   inseng.dll
regsvr32 /s /i[tab][/tab]    inseng.dll
:: KB836973
regsvr32 /s[tab][/tab]  /u   jscript.dll
regsvr32 /s[tab][/tab][tab][/tab]  jscript.dll
regsvr32 /s[tab][/tab]  /u   mfc40.dll
regsvr32 /s[tab][/tab][tab][/tab]  mfc40.dll
regsvr32 /s[tab][/tab]  /u   mfc42u.dll
regsvr32 /s[tab][/tab][tab][/tab]  mfc42u.dll
regsvr32 /s[tab][/tab]  /u   msdxm.ocx
regsvr32 /s[tab][/tab][tab][/tab]  msdxm.ocx
:: KB836973
regsvr32 /s /i	/u   msjava.dll
regsvr32 /s /i[tab][/tab]    msjava.dll
regsvr32 /s /i	/u   mshtml.dll
regsvr32 /s /i[tab][/tab]    mshtml.dll

regsvr32 /s[tab][/tab]  /u   msi.dll
regsvr32 /s[tab][/tab][tab][/tab]  msi.dll
regsvr32 /s[tab][/tab]  /u   mssip32.dll
regsvr32 /s[tab][/tab][tab][/tab]  mssip32.dll
regsvr32 /s[tab][/tab]  /u   mswinsck.ocx
regsvr32 /s[tab][/tab][tab][/tab]  mswinsck.ocx
:: KB836973
regsvr32 /s[tab][/tab]  /u   msxml.dll
regsvr32 /s[tab][/tab][tab][/tab]  msxml.dll
:: Registering MSXML 3
regsvr32 /s[tab][/tab][tab][/tab]  msxml3.dll
:: KB838993
regsvr32 /s[tab][/tab]  /u   msxml4.dll
regsvr32 /s[tab][/tab][tab][/tab]  msxml4.dll
regsvr32 /s /i	/u   occache.dll
regsvr32 /s /i[tab][/tab]    occache.dll
regsvr32 /s[tab][/tab]  /u   oleaut32.dll
regsvr32 /s[tab][/tab][tab][/tab]  oleaut32.dll
regsvr32 /s[tab][/tab]  /u   ole32.dll
regsvr32 /s[tab][/tab][tab][/tab]  ole32.dll
regsvr32 /s[tab][/tab]  /u   quartz.dll
regsvr32 /s[tab][/tab][tab][/tab]  quartz.dll
regsvr32 /s /i	/u   "%WINDIR%\srchasst\srchui.dll"
regsvr32 /s /i[tab][/tab]    "%WINDIR%\srchasst\srchui.dll"
:: KB836973
regsvr32 /s /i	/u   shdocvw.dll
regsvr32 /s /i[tab][/tab]    shdocvw.dll
regsvr32 /s /i	/u   shell32.dll
regsvr32 /s /i[tab][/tab]    shell32.dll
regsvr32 /s /i	/u   urlmon.dll
regsvr32 /s /i[tab][/tab]    urlmon.dll
:: KB836973
regsvr32 /s[tab][/tab]  /u   vbscript.dll
regsvr32 /s[tab][/tab][tab][/tab]  vbscript.dll
regsvr32 /s /i	/u   wuv3is.dll

:: Cryptographic errors
regsvr32 softpub.dll
regsvr32 wintrust.dll
regsvr32 initpki.dll
regsvr32 dssenh.dll
regsvr32 rsaenh.dll
regsvr32 gpkcsp.dll
regsvr32 sccbase.dll
regsvr32 slbcsp.dll
regsvr32 cryptdlg.dll

Especially usefull is the TOOLS button in Dial-a-fix which provides 3 interesting options:


Determines the files needed for Booting XP -> updates layout.ini in Prefetch folder; best used in combination with

Raxco PerfectDisk and the following PrefetchParameter in registry (must write a mail to suggest implementing it):

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters]

; Set this value to either 0-Disable, 1-Application launch prefetch onlyy, 2-Boot files Prefetch only, 3-Both (Boot

and Application files are prefetched)

; "2" is recommended

; 1 or 3 result in spamming %WINDIR%\Prefetch folder eith PrefetchFiles of all applications you ever have started.

Not desirable, because they gobble up space and are misleading the boot optimization process


Reset WMI/WBEM/WinMgmt

I suggest using this for whoever had problems with NERD and NVAIO (Larry) as the batches use WMI commands.


After applying this i also suggest using my batch, which rebuilds the Catalog database for Signed drives and XP


Again here's a rough snippet from the MRBOSS code:

echo on
net stop cryptsvc
RD /S /Q "%systemroot%\system32\CatRoot2OLD"
ren "%systemroot%\system32\catroot2" "catroot2OLD"
net start cryptsvc 
mkdir %systemroot%\system32\CatRoot2
echo off
echo pls check if the following folder is filled with new files von Sigverif
echo if not copy the ones from CatRoot2OLD into CatRoot2
echo and after that press Control+C to abort the  XPBOSS.CMD
echo press any key to continue
@echo off
%systemroot%\explorer.exe /e,/root,%systemroot%\system32\CatRoot2
RD /S /Q "%systemroot%\system32\CatRoot2OLD"

After that i suggest running a REPAIR and DEFRAG of internal XP databases

echo Repair HCDATA and CHKDSK Errors
esentutl /g "%windir%\pchealth\helpctr\database\hcdata.edb"
esentutl /p "%windir%\pchealth\helpctr\database\hcdata.edb"
esentutl /d "%windir%\pchealth\helpctr\database\hcdata.edb"
esentutl /g "%windir%\security\database\secedit.sdb"
esentutl /p "%windir%\security\database\secedit.sdb"
esentutl /d "%windir%\security\database\secedit.sdb"
esentutl /g "%windir%\SoftwareDistribution\DataStore\DataStore.edb"
esentutl /p "%windir%\SoftwareDistribution\DataStore\DataStore.edb"
esentutl /d "%windir%\SoftwareDistribution\DataStore\DataStore.edb"

and after that (or replacing the above last three commands) use the button "Flush SoftwareDistribution".

All these steps should result in an overall XP reaction speedup (Boot, Application start, IE, Explorer everything)


Link to comment
Share on other sites

  • 3 weeks later...

Dial-a-fix was updated today:

For some dumb reason, I disabled the check all and uncheck all buttons after you push GO.

I have now modified this behavior so that you can check or uncheck all even when Dial-a-fix is processing, in case you wish to remove or add additional procedures. Dial-a-fix will run the new checkmarks it comes across (but will not go backwards and run sections it has already passed by). This is useful if you chose all of the checkmarks at first, but changed your mind and want Dial-a-fix to stop processing after the current task (without pressing Cancel, which works differently).

The Policies dialog button was also being disabled at certain points, which isn't really necessary since it doesn't interact with the main window at all (it can be used simultaneously to the main dialog or tools dialog), so that has been changed as well.

So here it is, Dial-a-fix 0.57.2.


Link to comment
Share on other sites

  • 3 weeks later...
  • 2 weeks later...

Dial-a-Fix was updated again yesterday (and he fixed the EventViewer bug). See changelog and special hints what causes that bug (mshtml regsvr implementation :) )


Link to comment
Share on other sites

Guest DjLizard

I have a question :P

I've seen the following before, and I want to know:

1) If it's accurate

2) How to fix this event ID that gets generated

3) If there are other secret tricks like it

regsvr32.exe shell32.dll /n /i:U


I had been told that /i:U reinstates the Show desktop button in the Quick Launch toolbar.

Also, when I use /i:U, on my dev box it generates an event:

Event ID 1015

Source: MsiInstaller

Type: Warning

Message: Failed to connect to server. Error: 0x80004002

This event doesn't happen if I just use /i. Apparently, bogus values for /i: don't generate this error, so there may be something wrong on this dev box, or the event generation may be normal on all machines, I don't know.

I was trying to tune up Dial-a-fix and noticed all this :) (v0.58 is nearly done!)

Any ideas?

Link to comment
Share on other sites

Guest Guest

Oh yeah, I forgot:

®®®: Can I use your esentutl tricks listed above, as a new Tool in Dial-a-fix (I will credit you / list your website / etc)? Are there any other things I should know/add? :)

Link to comment
Share on other sites

Oh yeah, I forgot:

®®®: Can I use your esentutl tricks listed above, as a new Tool in Dial-a-fix (I will credit you / list your website / etc)? Are there any other things I should know/add? :)

Of course, i would feel honored if you do so :P

Credit plus website would also be very apprectiated.

Btw what i did i put the esentutil commands in the correct order to let them batch run automatically. I found a hint for this command back in 2003 at www.silent-dreams.de which is run by a single guy with deep knowledge of OS internals. It's not updated anymore this often though. What a pity.

regsvr32.exe shell32.dll /n /i:U

Great finding. It works perfectly here on this desktop. I checked the EventViewer and you're right a new message appears, though not an error. On the other hand

regsvr32.exe shell32.dll /n /i

does not 'repair' a deleted ShowDesktop here and also does not add an eventviewer entry.

Here's my message of /n /i:U

Ereignistyp:	Informationen
Ereignisquelle:	MsiInstaller
Ereigniskategorie:	Keine
Ereigniskennung:	11728
Datum:[tab][/tab]   22.03.2006
Zeit:[tab][/tab]   12:11:18
Product: WebFldrs XP -- Configuration completed successfully.

Weitere Informationen über die Hilfe- und Supportdienste erhalten Sie unter http://go.microsoft.com/fwlink/events.asp.
0000: 7b 33 35 30 43 39 37 42   {350C97B
0008: 33 2d 33 44 37 43 2d 34   3-3D7C-4
0010: 45 45 38 2d 42 41 41 39   EE8-BAA9
0018: 2d 30 30 42 43 42 33 44   -00BCB3D
0020: 35 34 32 32 37 7d[tab][/tab]    54227}

It has obviously something to do with the webfolders installation on your 'devbox'.

Webfldrs.msi in system32 is installed by default on XP unless you tweak around with nLite or manually (rigthclick) uninstall the package.

Are you in need of another reliable mirror for 260kb Dial-a-fix? I made a suggestion in our inner circle some weeks ago if we should provide a mirror, but as we are too busy with new designs of LV2Go and real life, we still have not made a decision or set up a dir on the server :)

You may need to add a hint that the Quicklaunch Bar has to be disabled/turn off and then turned on again to let the icon appear.

Link to comment
Share on other sites

Guest DjLizard

I'm glad it's just this machine.

Now that you've shown me your Event Viewer message, it all makes sense.

I was able to fix my devbox by checking box #2 in Dial-a-fix and letting msiexec re-register. Isn't that ironic that I needed my own tool? Or maybe it's fitting. Now I get the same event you do, hooray! Not sure why I didn't try that before.

Are there any other regsvr32.exe /i:<cmd> parameters for other objects that do cool things like this? I've never seen any other ones.

Are the esentutl commands *always* 100% safe to do, on every system?

Perhaps you could email me (my username at my username dot net) so I can stay in contact with you and get other tools/tricks. You can also join in on beta testing future releases, if you like.

I won't need mirroring of Dial-a-fix, thanks for the offer though! The more mirrors there are, the harder it is to make sure everyone has the latest version.

0.58 is in progress and is coming soon...

Some highlights:

* a logging facility

* improved temp folder/environment variable conflict detection

* fixed a bunch of bugs

* a couple of new DLL registrations

* the OLE registration section returns


Link to comment
Share on other sites

Glad it worked :) looking forward to the new release of Dial-a-Fix.

The use of the batch driven esentutil commands never gave me a negative result or any errors on each of the more than 20 different PC/Laptops configurations i used it on.

I cannot guarantee an always 100% safe usage though. It might be useful to read the documention @ MSDN or so before you implement it. As it's an integrity check and defrag of a database, chance are low nowadays that something goes wrong. The obvious MS warning though could scare John Doe.

I don't know and haven't read about other of these interesting /i:<cmd> parameters, but here's another very old, but useful unregister trick for your http://wiki.djlizard.net/DLL_unregistration WikiPage

regsvr32 /u wmp.dll

which gets rid of eehm.. WMP Shell Extension, who would have thought :)

I would be pleased and interested to join the beta testing team. Where to apply :P

Link to comment
Share on other sites

:) obvious it's wmpshell32

good that we have Mods who approve what we write :)

Link to comment
Share on other sites

Guest DjLizard

Thanks, I've added the wmpshell.dll registration to that wiki entry of mine.

To sign up for DAF beta testing, send mail to the email address listed in DAF under Contact (I won't post it because I'm already getting spam to it)

Link to comment
Share on other sites

and here's the one to disable Microsoft Java Virtual Machine regardless if SUN's Java is installed or not since it will use the SUN one if it is.

regsvr32 /u msjava.dll

then to use MS JVM again.

regsvr32 msjava.dll

Link to comment
Share on other sites

  • 2 months later...

new version (2006-06-27) is out: http://wiki.djlizard.net/Dial-a-fix_beta.


2006/06/27 - DAF is now

Added "Hide disabled" option to policy scanner - hides any policy with a Value of "0"

Log now records the value and REG_type of detected policies

Fixed a few tooltip inconsistencies

2006/06/22 - DAF is now 0.60 (minor version not tracked)

Added new policies: DoNotAllowXPSP2, UpdatesDisableNotify

Added Auto-scroll capability to log pane

Made the text of the "Flush SoftwareDistribution" confirmation dialog clearer

Fixed some typos

Cleaned up some internal code structures

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...