Help - Search - Members - Calendar
Full Version: [Release] HashCheck Shell Extension 2.1.11 (32/64-bit)
MSFN Forums > Member Contributed Projects > nLite > Application Add-Ons

   


Google Internet Forums Unattended CD/DVD Guide
code65536
What is this thing?

This is a fun toy to have on any system. It's a little like HashTab... except with more features... and better usability... and a much less bloated footprint.

HashCheck gives you a hashes tab in the file properties dialog, but it lets you hash more than one file at once (and even entire directory trees). And it can create checksum files (like the .sfv files that accompany some torrents or the .md5 files that I often use). It can load and verify checksum files. And all for a final installed size of less than 100 KB. Supports both x86-32 and x86-64 systems.


Screenshots




Details

Website: HashCheck Shell Extension (Bugs/Suggestions)
Install Location: %SystemRoot%\System32\ShellExt
Uninstallable: Yes


Download (version 2.1.11)

Links: Download
MD5: 66e838262e3b71bb567df42e2f064f33
Size: 0.05 MiB
μArch: x86-32, x86-64 (single installer for both x86-32 and x86-64)
Languages: en, cs, de, el, es, fr, it, ja, ko, nl, pl, pt-BR, pt-PT, ro, ru, sv, tr, uk, zh-CN, zh-TW (Translation Info)

Note: This addon is compatible with both the RVM Integrator and with nLite.
radix
It's better then HashTab. Hope that Kells will include this in his addon pack.
Edit: Can you implement the ability to check what type of hash can we use
(like in HashTab), comparing with another file and add more hashes?
Thanks!
code65536
QUOTE
2008/12/12 - 2.1.0
  • [HashVerify] When sorting, the file name column will now handle numbers in the file name in the same way Windows Explorer does; for example, "file9" will now come before "file10" when sorting by the file name column.
  • [HashVerify] You can now close the checksum file verification dialog by pressing ENTER.
  • [HashVerify] More improvements to the startup time when loading and parsing extremely large checksum files.
  • [HashSave] Fixed a minor cosmetic formatting bug for SFV files created from the context menu.
  • [General] Fixed a problem where some extremely lengthy operations (those involving over one million files) may be cut off on 32-bit systems.
  • [General] The HashCheck version number is now displayed in the title bar of the options dialog. The version displayed is the version currently in use, which, in some instances, may not necessarily be the version installed on the system. This is because after installing a new version of HashCheck over an old version, Windows will continue to use the old version that had already been loaded into memory until you log off and log back on (this is how Windows treats all shell extensions).
XhmikosR
Great tool, works like a charm. One feature request: Ability to choose which hashes to check for like hashtab and add program version in add/remove programs entry.
Thanks for the tool.biggrin.gif
radix
QUOTE (XhmikosR @ Dec 12 2008, 07:45 PM) *
One feature request: add program version in add/remove programs entry.

It's already there.
XhmikosR
I don't think you understand me. This is how it is now:



And this is what I mean:



It's just a minor thing, but I think it's nice to know the exact version that it's installed.
code65536
QUOTE (XhmikosR @ Dec 12 2008, 01:47 PM) *
And this is what I mean:


There is a version column in the add/remove programs box, but by default, Vista hides this column (XP did not hide this information). If you right-click on the column headers and select "More", you can turn on the Version column, and you'll be able to see then version numbers.
XhmikosR
I know that I can display the version number by adding that column, but because of the fact that by default it doesn't show up, it would be nice if the version number was included in the program title.
Again, thanks for your great program.biggrin.gif
code65536
QUOTE
2008/12/12 - 2.1.1
  • [HashSave] Workaround for a bug in versions of Windows prior to Vista that causes an extra separator to be added to the context menu under certain circumstances.
  • [HashProp] The secondary default font for the results display in the file properties dialog is now Lucida Console instead of Courier New because the latter is not as readable at small sizes. This fallback font is used only if the user has not selected a custom font and the primary default font (Consolas) is not available.
code65536
QUOTE
2008/12/18 - 2.1.2
  • [HashProp] The search box will now find-as-you-type.
  • [Localizations] Added German translation. (translator: "Rolf")
  • [Localizations] Added French translation. (translator: "user_hidden")
  • [Localizations] Added Turkish translation. (translator: M. Omer Golgeli)
code65536
QUOTE
2008/12/23 - 2.1.3
  • [HashVerify/HashSave] Closing a non-default host shell process will no longer prematurely terminate an open HashCheck window.
  • [HashProp/HashSave] Changing the destination path when saving a checksum file will now cause the file paths stored in the checksum file to be adjusted to compensate.
  • [HashVerify] Reduced memory footprint when processing large checksum files.
  • [HashProp] The tab title in the en-US localization has been changed to "Checksums".
  • [Localizations] Added Portuguese (pt-BR) translation. (translator: "0d14r3")
development roadmap
code65536
QUOTE
2009/01/07 - 2.1.4
  • [Localizations] Added Spanish translation. (translator: "Phare")
development roadmap
JatinBeniwal
simply great888888888888
code65536
QUOTE
2009/01/13 - 2.1.5
  • [Bug #4] [Localizations] Added Greek translation. (translator: "XhmikosR")
  • [Bug #5] [Localizations] Changed "context menu" to "shortcut menu" in the en-US localization (this is apparently the technically correct term in Windows).
  • [Bug #6] [Installer] The installer will now remind the user to log off and log back on after the installation is completed if the installer determines that it is necessary (when updating an existing installation, the shell process needs to be restarted in order to get it to load the new version into memory).


Update: 2009/01/14 - Refreshed the installer to fix a minor bug that prevented the temp files used by the installer from being cleaned up after install in certain cases. No other changes were made, and the binaries within the installer are unchanged.
code65536
QUOTE
2009/01/22 - 2.1.7
  • [Bug #46] [Localizations] Added Polish translation. (translator: "RedWine")
2009/01/20 - 2.1.6
  • [Bug #21] [General] The title bar of the options dialog will now display the target architecture alongside with the version.
  • [Bug #24] [HashVerify] Make use of the new list view style introduced in Windows Vista; this will preserve foreground color coding through selections.
  • [Bug #25] [HashVerify] Selection integrity is now preserved after sort operations.
  • [Bug #26] [HashVerify] Memory footprint optimizations.
  • [Bug #27] [Localizations] Added Korean translation. (translator: JaeHyung Lee)
  • [Bug #23, #45] [Localizations] Minor miscellaneous changes to a couple of en-US strings.
code65536
QUOTE
2009/03/17 - 2.1.8.3
  • [Bug #81] [Localizations] Portuguese is now available as pt-PT in addition to pt-BR. (translator: "LPCA")
  • [Bug #84] [Localizations] Updated French translation. (translator: "mooms")
  • [Bug #85] [General] Exchanged positions of the font button and preview in the options dialog.
2009/03/02 - 2.1.8
  • [Bug #54] [General] Fixed a problem in which the Windows file picker dialog would maintain an open handle on the directory to which a checksum file was saved.
  • [Bug #59] [Localizations] Added Romanian translation. (translator: Oprea Nicolae, a.k.a. "Jaff")
  • [Bug #65] [General] MD4/MD5/SHA-1 checksum files will now have the '*' flag set for compatibility with third-party checksum verification programs that look for this flag.
  • [Bug #66] [Localizations] Added Italian translation. (translator: "Botta")
  • [Bug #77] [Localizations] Added Traditional Chinese translation. (translator: Jack Chang)
  • [Bug #78] [Info] 2.2/3.0 roadmap update.
code65536
QUOTE
2009/06/07 - 2.1.9
  • [Bug #161] [Installer] Improved the way in which the uninstaller deletes the DLL.
  • [Bug #180] [Localizations] Added Czech translation. (translator: Václav Veselý)
  • [Bug #183] [Localizations] Fixed a bug that prevented the Traditional Chinese translation from working under NT 6+.
  • [Bug #194] [Localizations] Added Swedish translation. (translator: Stefan Friman)
code65536
QUOTE
2009/06/21 - 2.1.10
  • [Bug #74] [General] On Windows NT 6.1 or later, HashCheck's taskbar buttons will now be grouped separately, instead of being grouped with those of its host process.
  • [Bug #198] [Localizations] Added Dutch translation. (translator: "Edwin")

code65536
QUOTE
2009/07/01 - 2.1.11
  • [Bug #184] [Installer] On Windows 7 RC and newer, Windows will no longer incorrectly display the "This program might not have installed correctly" message after installation.
  • [Bug #202] [HashSave] Fixed a bug that prevented HashCheck from appearing in the context menu when invoked from Total Commander on versions of Windows prior to Vista.
  • [Bug #203, #204] [Localizations] Added Russian and Ukrainian translations. (translator: Yurii Petrashko)
  • [Bug #205] [Installer] Moved the installer's UAC elevation to right before the actual installation, instead of when the installer is first launched.
gUiTaR_mIkE
Thank you for your efforts with HashCheck - love the utility for sure! yes.gif

I do wish you would change "UNREADABLE" to "MISSING" - this is more appropriate for the file state if
I understand this is the only condition for "unreadable" ie; the file is "missing". Regardless, HashCheck
is a great tool.

Mike
code65536
You can get "unreadable" in other ways, too, though they are probably not as common as "missing". Try verifying a big file, and in the middle of that long process, delete the file and see what happens. Or try taking away the read permissions of a file before trying to verify it.
gUiTaR_mIkE
QUOTE
try taking away the read permissions of a file before trying to verify it.

This makes sense, thanks for elaborating. Why anybody would delete a file while they were verifying it
who knows but, they deserve an error message. welcome.gif

Mike
code65536
QUOTE (gUiTaR_mIkE @ Jul 4 2009, 04:19 PM) *
QUOTE
try taking away the read permissions of a file before trying to verify it.

Why anybody would delete a file while they were verifying it

Well, that was just an example; there are countless other scenarios that might crop up. For example, a stuff on a shared network drive might be deleted or moved by other users, or the network itself might fail for some reason. A user might forget that there's a file hashing operation going on and unplug a USB drive containing the files halfway through. Etc. There are just too many possibilities of stuff that might go wrong, and that's what "unreadable" is.
gUiTaR_mIkE
I sure hope you didn't think I was questioning your reasons, I was only asking. Your first response was sufficient for me,
and I was only making a joke when I said "they deserve an error message for removing a file while it was being verified".

I'm sorry I bothered you - it really wasn't a criticism of the app.
code65536
It's fine; I wasn't sure if that was a serious question, so I decided that an elaboration was the safer route. newwink.gif
rds_correia
Hi there code65536,
Excellent tool and excellent features! smile.gif
I do miss one thing: a green check mark right next to one of the hashes when I paste a hash which matches the ones found by hashcheck.
Although there is already a feature that highlights a matching hash I'd say that a green icon right next to it "ŕ lá" hashtab would make it a killer app.
Speaking of hashtab, I wouldn't like this to turn into a hashcheck vs hashtab thread just because of my comparison but I have to ask this: is it normal for hashcheck to be a whole lot slower than hashtab when reading a file to show hashes?
I've made a lot of trials with both hashtab and hashcheck on their x86 versions (hashtab v2.3.0 vs hashcheck v2.1.11) and hashtab always wins and most of the times it wins for more than a couple of seconds per 20 megabytes hashed.
Am I using/installing hashcheck in the wrong way or is this ok?
I'm fine with hashcheck's speed but the hashtab speed comparison was inevitable and the results are quite conclusive.
Sorry 'bout that mate and keep up your excellent work on hashcheck and cmdopen.
Cheers
kliu0x52
QUOTE (rds_correia @ Jul 13 2009, 02:48 AM) *
I do miss one thing: a green check mark right next to one of the hashes when I paste a hash which matches the ones found by hashcheck.

Where would such a checkmark go? Because HashCheck supports multiple files, the concept of a single match or non-match in the file properties dialog does not make a lot of sense. This is why there is no compare hash function in the file properties dialog--there is instead a search function, where you can paste in a hash, and if none of the files have a hash that matches it, it will report not found, otherwise it will find every file that has a matching hash (there might be more than one). A checkmark does not make sense in this multi-file context. If you are suggesting that a checkmark be placed in the results text box, that is not feasible because it is a regular text box, and not a "rich text" box, and there are performance implications to using "rich text", if there are thousands of files hashed and displayed.

In the HashVerify window, there is no graphical icon because of performance (for people who hash and verify large directory structures with tens of thousands of files, the use of graphics like that has a negative impact on UI performance and footprint) and because graphics are non-scalable and thus look rather ugly for users with a high DPI.

QUOTE
is it normal for hashcheck to be a whole lot slower than hashtab when reading a file to show hashes?

No, it's not. A lot of care has gone into HashCheck's performance and to make sure that it is at least as fast as all of the common checksumming utilities (HashTab, QuickSFV, md5sum, etc.). In my personal experience, the two are about the same in speed in most situations, with HashCheck being slightly faster than HashTab; I've never seen HC work noticeably slower than HT.

It should be noted that the most important factor in determining speed is disk access. If a file that HashCheck is working on is fully cached in memory, it can process the file at several hundred MB per second. If the file is not cached in memory, then it's limited by the disk access speed, which is usually around 30-100MB/s, depending on factors like disk speed, fragmentation, where on the disk the file is located, etc. In most use cases, HashCheck's worker thread is idle, waiting for the disk to give it data. HashCheck also uses a very large read buffer to minimize the effect of disk access overhead (this is especially apparent when comparing HashCheck against most other hashing utilities with data over a high-latency network drive; in certain exceptional situations, HashCheck can be over twice as fast than some other checksumming utilities).

Because the disk is the bottleneck in most cases, it is very hard to do direct comparisons because if you hash a file with HashCheck and then hash the same file again with HashTab, then HashTab will win because that file would have been covered by the file system cache the second time through. To ensure a fair comparison, one has to fully read the file, and then hash with HC and HT so that they both benefit from the file being in the cache. Or one has to do a lot of other disk access to try to force the file out of the file system cache (which, depending on the size of your system memory, may be several hundred MB in size) before each hash operation to try to ensure that neither HC or HT get the benefit of the file being in the cache (this may not always work, esp. if you also have secondary non-FIFO caching like SuperFetch). Or hash two different files with similar sizes, fragmentation, and physical location on disk (which is hard to control).
rds_correia
Thank you very much for your reply, kliu0x52.
I don't use the check multiple file feature and that's why I never really thought about where to place the checkmark.
As for the speed issue, I just noticed that you're right.
It does have influence having the file in cache and it is why HC has been slower than HT.
It's because in my trials, I always try hashing a file with HC and after that I hash it with HT...
Dumb of me for not having noticed.
Cheers




Google Internet Forums Unattended CD/DVD Guide

This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.