Contact rdthom@netcom.com for enhancement suggestions and help
RegChk

!!! Always backup your registry and harddrive before doing any registry edits !!!
!!! Mistakes in editing the registry can destroy your system and data !!!

Get RegChk from ZDNet! Current version 1.0.1

You can also get a copy of VB40032.DLL in zip format here in case you don't have it.


Get RegChk 1.1 BETA.
Here are the version notes for the beta thus far:

added "regedit export complete" routine, fixes PERMISSION DENIED
fixed "Bad Path" problem when string contained characters considered illegal for a pathname
changed drive letter resolution (fixed network drive letter problem)
fixed the half-clear-screen problem
changed regedit export name to regchk00.txt (someone's note file got overwritten)
added user notification of file open completions
fixed close problem that prevented Start a 2nd time
visual enhancement - added line counter for each item
improved filename extraction and improved filename filter
added multi-filename-per-line functionality



Known bugs:

Occassionally, after you quit RegChk, there is an instance left in memory. If you do Control-Alt-Delete, the win95 tasklist will show RegChk still running. I believe this is something with VB4 and the SHELL command, but I'm still tracking it down. If you try to restart RegChk, and it complains, you'll have to use EndTask from the task list.




Future enhancements

A no-nag file where you can list things that you know don't exist, but you cannot delete because you need future functionality. (See Kent's letter below)

An INI file for storing window positions so they're restored next use, and for storing what files you want generated. (Seems some people don't want *any* files, just the stuff on the screen, and some people want more files in different formats)

Know of anything else, send me some mail.


Thanks for stopping by.
There will be upgrades and a FAQ in the near future.
RegChk is free and will always be free.

If you've installed and uninstalled lots of programs, chances are good that your Registry is full of pointers to files and folders that no longer exist on your system. Discover the junk that remains with RegChk. This freeware utility scans your Registry for files and directories and checks to see if they still exist on your hard drive. A report file is then generated for each drive that shows the keys that point to nothingness. However, RegChk does nothing to the Registry -- it's up to you to remove the bogus entries manually with the Windows 95 Registry Editor. Of course, you should back up your Registry before attempting modifications because the wrong edit could cripple your system so badly that a complete Win95 reinstall will be necessary.


Written By:  Ron Thompson

Email:       rdthom@netcom.com

Language:    vb4

System:      Win95

Date:        July 19, 1997

Version      1.0.1

Status:      freeware

Copyright:   Ron Thompson, 1997





Why I wrote this

--- - ----- ----

RegChk was written so I could find the 'junk' in the registry. 

After installing and uninstalling several hundred programs, 

I knew that there must be lots of stuff in the registry that pointed to 

files that moved or were no longer on the harddrive.



There are many utilities, many articles written, and many commercial 

products dedicated to removing a specific app from the registry. 

I could find nothing that took the registry point-of-view to tell you 

what was moved or gone from the harddrive.



Now something does.





What does it do?

---- ---- -- ---

RegChk scans the registry for files and directories and checks to see 

if they exist. RegChk does NOTHING to the registry. It simply shells 

'regedit.exe /e regchk00.txt' which exports everything from the registry 

to a text file. Even the text file is treated as read-only (as a side 

benefit, you now have that all-important registry backup you've been meaning

to do). A separate report is generated for each drive.





What info do I get?

---- ---- -- - ----

Each missing file is reported in regchk_*.out where * is the drive letter 

you checked.  Each reported file has 3 lines of data similar to the 

following:



D:\COREL\OFFICE7\QUATTRO7\QPW.EXE

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.WB1\shell\open\command]

@="D:\\COREL\\OFFICE7\\QUATTRO7\\QPW.EXE %1"



Line one is the actual filename or directory name that RegChk checked for 

existence.  Failure to find it is what caused this report entry to be 

generated. It may find some 'funny' things, because filename parsing from 

the registry is not an exact science. I'm constantly adding filters to 

eliminate the 'funny' ones from the scan. (If you find a 'funny', email 

it to me, I'll add it to the filter and email you the new code)



Line two is the key I found just before the file or directory. It 

MAY NOT BE THE EXACT KEY, but will be *very* close to the problem.



Line three is the raw data in which I found the filename. It's for reference 

in case the filename looks 'funny'





What do I do with it?

---- -- - -- ---- ---

You can use this information to edit your registry. THIS CAN BE A VERY 

DANGEROUS THING TO DO. If you're not comfortable in the registry, stay out, 

and just forget you ever saw this program. MISTAKES IN REGISTRY EDITS CAN 

EASILY DESTROY ALL THE DATA ON YOUR SYSTEM, AND PERHAPS ON OTHER SYSTEMS AS 

WELL. YOU HAVE BEEN WARNED.



That said, use the information to delete data and keys for files and 

directories that no longer exist on your system. Use your own discretion in 

deleting references.





Some things I've found
Have you used RegChk to find junk in the registry, deleted it, only to find it come back again?

Win95 re-reads the win.ini file each time the system boots. It does this in case a 16-bit non-registry-aware program writes new information there. Win95 then updates parts of the registry with that information. Check for the same data in win.ini and delete it. It won't show up in the registry again after that.



Questions I've received

>Hi Ron

>	I just wanted to take a moment to thank you for the great little

>program!! I have just one question, when deleting items from the

>registry, should I delete the value or the entire folder?

>

>	Thanks

>

>	Kent



As to folder or key deletion, it depends. 



The short answer is, if you know for sure the app has been uninstalled,

you can probably delete the folder. If not, you may not even want to 

delete the key.



For instance, I have a program from Seagate called BackUp Exec.

RegChk told me the following (in regchk_d.out):



d:\backupexec2\BESCHLOG.TXT

[HKEY_LOCAL_MACHINE\SOFTWARE\Seagate\Backup Exec Scheduler]

"LogPath"="d:\\backupexec2\\BESCHLOG.TXT"



I would only delete the key, since the folder contains other keys and 

information about other parts of the still-installed backup program. 

But I know something about this file. I know it's the log file for the 

backup unattended scheduler. I know that it doesn't exist because I've 

never run the backup SCHEDULER. And since this program is still installed 

and I may someday use the schedule function, I'm going to leave this key 

alone. (sounds like the basis for a no-nag feature!)





On the other hand, it found on D:



d:\UnInstaller 4\custom.dtb

[HKEY_USERS\.Default\Software\MicroHelp\UnInstaller4]

"CustomRulesDataBasePath"="d:\\UnInstaller 4\\custom.dtb"



Now, I *know* I removed the uninstaller4 demo months ago, so in this case 

I can remove the entire uninstaller4 folder.



===========================================================================



>Dear Ron,

>Hi, my name is Matt and I have a few questions I hope you can answer.

>Firstly, thankyou for your freeware program, as I am a bit of a greenhorn

>I find it great to surf around for helpful programs that are simple and

>easy to use.

>I've had my 486/4x100 for 2-3 yrs and I'm only just really getting the hang

>of it now. (I can't have my 6yr old son knowing more about it than me!!)

>Anyway I was wondering how to read regchk_c.out. I started to print the 

>regchk.txt file but stopped it once it got to 100 pages (it goes beyond

>1000 pages, the txt file is 1.43Mb).

>Thanks, hope to hear from you soon

>Matt



Thanks so much for taking a look at the program.



Here's one entry from regchk_c.out, and an explanation by line



1	c:\windows\socks.cnf

2	[HKEY_USERS\.Default\Software\Netscape\Netscape Navigator\Services]

3	"Socks Conf"="c:\\windows\\socks.cnf"



Line 1 if the filename or directory RegChk was verifying existence of.

Line 2 is the registry folder that the filename in line 1 was found in.

line 3 is the original line that the filename was extracted from. 



The original entry (line 3) is important. Filenames with spaces may be 

extracted improperly.  This way you see the original data, and can make an 

informed decision on what to do with the entry.



The regchk_c.out file is there as a somewhat faster way of seeing registry 

data that RegChk found fault with.

=========================================================================

Thanks for writing, check out http://www.sageinst.com/regchk 





Now, let me tell you how I use it. 



Once I get the filename or directory name that RegChk thinks doesn't exist, 

I go to Windows Explorer and make sure it *really* doesn't exist. For 

example RegChk says that the file d:\UnInstaller 4\custom.dtb did not exist.



Sure enough it doesn't because I removed the UnInstaller4 demo months ago. 

So in this case I deleted not only the key and data, but the whole dang 

Uninstaller4 folder from the registry, which I found by using FIND in 

regedit looking for custom.dtb.



After doing a few edits on the registry, I run Microsoft's RegClean 4.1. 

That way I can see right away if anything I've done has caused problems.



One of the things I noticed before using RegChk and cleaning up things 

was that RegClean would find 50-60 "bad" entries every time I ran it. The 

number of bad entries dropped every time I cleaned out a few things, 

until now, it reports no problems at all. And my system is amazingly 

stable now. Odd behavior from something that isn't even there!



>If I delete data and keys for files and directories that no longer exist

>and leave the references alone, will that in itself avoid the problems that

>we all have when we screw with the registry?



I don't quite get what "problem we all have" means.



If you mean corrupted registry, or regedit errors from "oops"-type things, 

that's pretty straightforward to fix. 



Once your system is in good working condition, export your registry to a 

safe place, with a filename that includes the date (such as 

reg_97aug16.txt). Then, just before installing new software or hardware, 

export your registry again.  



Get the program INCTRL3 from zdnet's software library and use it to monitor 

the installation. It will give you a list of every file/directory/registry 

change during the install.



If the thing you installed doesn't work out, use the INCTRL3 report to rip 

out all the parts of the program, then use RegClean to check it's integrity.



I hope this answers your question. If not, just let me know, and I'll try 

to clarify it.



Ron





At 08:11 PM 8/15/97 -0400, you wrote:

>Ron:  Thank you for writing and making public your regchk program.  It is

>very obvious that the registry scheme was not designed for the user and I

>hope some day someone writes a program trap and decode it and to place it

>into an .ini type file. In the mean time I shall use your fine program .

>In your Docs the following statement appears, "That said, use the

>information to delete data and keys for files and directories that no

>longer exist on your system. Use your own discretion in deleting references."

>If I delete data and keys for files and directories that no longer exist

>and leave the references alone, will that in itself avoid the problems that

>we all have when we screw with the registry?  I realize that is like asking

>the doctor to guarantee his prescribed medicine but just a little more help

>info in your Doc would be mighty comfortable and I think it can be done

>without exposing you to more liability. Every other registry program I have

>seen, just doesn't do the job.  Thanks again.

>James 





















ZDNet HotFiles
ZDnet HotFiles
Go to the HotFiles Library

Enter Keywords:







Take a look at the Sage Instruments page


Send your questions, comments and suggestions to:
<rdthom@netcom.com>

Last update Aug 8, 1997