New
#1151
Thanks. Added to my bookmark.
MD5Hash now includes a 32 bit stand-alone exe as well as x64 64 bit.
Enhancements for 1.4 include:
displaying error messages in the output EditBox instead of stopping processing and showing an error dialog. Now the About Box default button is set to No so that you can close it by pressing Enter without taking a trip to my web page. But clicking Yes to Donate is definitely encouraged. :)
The 32 bit version seems to run as fast on my quad core as the 64 bit version. Only difference is the 64 bit exe does the same work with fewer cpu cycles. Neither one should hog the machine though.
edit: btw, it processes files, not folders. There are other freebies out there that recurse directories. If a file turns out to be a folder or has 0 length, the processing continues with the next file, if there are any left in the queue. The msg is just copied to the output EditBox.. for example IS FOLDER if that file is a folder etc..
another edit: updated to 2.0. Now a filename or folder name may be specified on the command line. Currently it does not recurse into subfolders. I may change that and just set a maximum on the size of the job queue. Also included are AutoIt3 scripts so that you can add and remove MD5Hash from the Explorer Context Menu. Right click a folder or file and launch MD5Hash that way. Drag & drop also accepts folders in the drop.
I think I will go with some recursion so that subfolders will be included. I'll have to play around with it to set a reasonable max. Obviously it's insane to right click on the Windows folder and compute MD5 sums for 50,000 files. I'm thinking a max of 1000 may be reasonable.
The AutoIt3 scripts require you have the latest AutoIt3 installed on your system. But if you don't care about Context Menu then MD5Hash is totally portable.
edit: 2.2 bug fix release. Progress bar not used on small files. Fixed caption bar update. Sub-folder processing is enabled with a max job queue size of 4096 files.
Yet another edit: Version 2.3 now has /main switch for single instance control. You can have a main or master instance do all the processing when launching from Explorer context menu, instead of multiple copies each with one result. See the Readme in the x64 folder for details.
edit: v. 2.8 As of v. 2.7 the "/main" command line switch is no longer used. The first copy to run tries to set itself as the "main instance" of the app. As of v. 2.8 if you subsequently open an additional copy of the app with nothing on the command line, it will remain open so you can process something as a separate job. For example, if you have a file on a separate physical drive, there's no need to wait for the jobs on the main instance to complete. Just drag & drop the file onto the 2nd copy etc..
It's free for you to use at your own risk. You may download here:
Faves Downloads
Windows 7 screen shot:
![]()
Last edited by MilesAhead; 19 Oct 2010 at 16:08.
For a Hash app, I am more partial to http://keir.net/hash.html
even though there is not a 64bit version
Link Fixed
Last edited by Tepid; 25 Sep 2010 at 20:57.
For some reason I have to manually type in your link or else I'm redirected to 7 forums.
Strange.
Yeah, I was just looking at one today when searching for algorithms. It recursed subdirectories and did a whole bunch of other nice features. But what I use it for is to check a few downloads. It's not designed to detect changes in the file system etc..
There are tons of nice free ones. Just go to Softpedia.
You're not having much luck with links. They are updating the site. heh heh heh
My program you can copy and paste from the EditBox. But the nice thing about MD5 is, if the first few digits are the same you don't usually need to look any further. Any difference generates a wildly different string.
I did an earlier version of this program using Delphi 5. It's not as fast as this one, since I used vc++ 2010, but it's just as reliable. One thing about simple loop logic is, it's robust. Once you start to get into threading, recursion and all the rest, it takes a long time for all the bugs to show up. Esp. in Windows it's a real pita to write a directory walk function. Probably the best general purpose one I've seen is in Python. I tried to translate it into Delphi but the file attribute stuff in Windows doesn't always work as documented. The python dude must have used some undocumented tricks to get it right.