[WDX] LotsOfHashes v1.4

Discuss and announce Total Commander plugins, addons and other useful tools here, both their usage and their development.

Moderators: white, Hacker, petermad, Stefan2

User avatar
aRIEL242
Junior Member
Junior Member
Posts: 64
Joined: 2009-06-29, 12:31 UTC

Post by *aRIEL242 »

Download New Version (LotsOfHashes v1.1)
sticazzi wrote:Edonkey/emule (Md4 based) is missing.
ADDED - eD2k/eMule hash algorithm is now supported.

iana wrote:... isn't the 32 bit file supposed to be LotsOfHashes.wdx not LotsOfHashes.uwdx
EricB wrote:a) Plugin doesn't seem to work in TC 8.01 32 bit on Win 7 x64
FIXED - Missing ANSI functions added in addition to existing Unicode functions.
CHANGED - 32bit file extension renamed from .uwdx to .wdx. LotsOfHashes.uwdx is obsolete and can safely be deleted.
User avatar
EricB
Senior Member
Senior Member
Posts: 355
Joined: 2008-03-25, 22:21 UTC
Location: The Netherlands

Post by *EricB »

Hi Ariel,

I can confirm the plugin is now working on TC 8.01 32 bit on Win 7 x64 . Most algorithms are working fine (I've tested a few) and they seem fast, too.
However, MD5 algorithm renders a crash when configuring it in custom columns view:

Crash in plugin LotsOfHashes.wdx
Access violation at address 73302F05. Write of address 00000004.

The column remains empty and when navigating to another folder the AV message is shown again. So far I found this only for MD5, but I did not go through all algorithms.

Regards, EricB
sticazzi
Junior Member
Junior Member
Posts: 39
Joined: 2007-09-09, 14:56 UTC

Post by *sticazzi »

aRIEL242 wrote:
sticazzi wrote:Edonkey/emule (Md4 based) is missing.
ADDED - eD2k/eMule hash algorithm is now supported.
many thanks :D
User avatar
EricB
Senior Member
Senior Member
Posts: 355
Joined: 2008-03-25, 22:21 UTC
Location: The Netherlands

Post by *EricB »

Hi Ariel,

I did some more research using the excellent WDXGuide: this also renders errors for some Hash values. The error displayed is 'Exception in ContentGetValue'. The erroneous algorithms are MD5 and all SHA1/SHA2 varieties.

HTH,

Regards, EricB
User avatar
aRIEL242
Junior Member
Junior Member
Posts: 64
Joined: 2009-06-29, 12:31 UTC

Post by *aRIEL242 »

EricB wrote:MD5 algorithm renders a crash
I have tested the MD5 algorithm (with all 4 choices) on win7 64bit with TC 8.01 32bit and with TC 8.01 64bit and I've failed to reproduce the access violation crash you reported.
  • 1. Dose the crash append with a specific choice or with all four of them (uppercase, lowercase, delimited uppercase and delimited lowercase)?
    2. Dose the crash append with any file size? Let's say bigger then 8MB or smaller.
    3. How many columns are there in the custom columns view that crashed? Is it a single column view or more?
    4. Dose this happened when the file is hashed for the first time or only when the value is retrieved from the cache? Use the TC command cm_UnloadPlugins in the TC's command line to clear the cache.
Any additional bit of information that you can provide can be helpful and I'll appreciate any help.
EricB wrote:The column remains empty and when navigating to another folder the AV message is shown again.
I think the reoccurring crash after switching to a different folder has to do with this thread. Basically it's due to the way TC manages content plugins.
User avatar
aRIEL242
Junior Member
Junior Member
Posts: 64
Joined: 2009-06-29, 12:31 UTC

Post by *aRIEL242 »

Hi EricB

I've also used WDXGuide and I'm still unable to reproduce.
User avatar
EricB
Senior Member
Senior Member
Posts: 355
Joined: 2008-03-25, 22:21 UTC
Location: The Netherlands

Post by *EricB »

Hi Ariel,

To answer your questions:
1. Yes, all four
2. Seems so. I've a folder with some 700 Mb iso's, which also has small files. Calculation fails for all.
3. I've a view with Name, Ext, Date, Size, wdHash.MD5 and LotsofHashes.MD5 (default). So two wdx derived columns
4. Seems to be for both. I've used cm_unloadplugins and also restarting TC, and I've seen this crash in both cases, cached and non-cached.

I thought the problem might be due to some peculiarity on my system, but I would not know which. I'm using symbolic links etc, but also folder without symlinks render the crash message. Is there any (not-so-obvious) dependency on a VC Redist version?

Regards, EricB
User avatar
aRIEL242
Junior Member
Junior Member
Posts: 64
Joined: 2009-06-29, 12:31 UTC

Post by *aRIEL242 »

Hi EricB

You can stop checking any further.
I think I know what the problem is.

You probably are not using win7 professional. I guess win7 premium of less.
The common denominator between MD5 and the SHA1/SHA2 algorithms is that they are all calculated using Windows cryptography APIs (Wincrypt) which is missing or unavailable on your system.

In the next release I'll remove Wincrypt from the plugin and implement MD5 and SHA1/SHA2 algorithms like all the other algorithms.
User avatar
EricB
Senior Member
Senior Member
Posts: 355
Joined: 2008-03-25, 22:21 UTC
Location: The Netherlands

Post by *EricB »

Hi Ariel,

As a matter of fact I'm using Professional, but I disabled the Cryptography because I'm not using it ;-) Seems indeed a good idea to remove dependency on the API for users with 'lower' Win 7 versions. Would you expect any differences in performance?

Regards, EricB
User avatar
aRIEL242
Junior Member
Junior Member
Posts: 64
Joined: 2009-06-29, 12:31 UTC

Post by *aRIEL242 »

Hi EricB,

I expect very small differences in performance in any direction.
Doing things "in house" generally improves performance but still it will probably be very small.
User avatar
humb20
Junior Member
Junior Member
Posts: 19
Joined: 2010-11-16, 16:17 UTC

Post by *humb20 »

@aRIEL242 @nsp - guys, thanks for your help. What I didn't know is that his had to be configured through custom columns. The reason I got it was because there are many files you download which end up not being the real thing. I know there are many tools out there to check this sort of thing, but hey if it's a TC plugin, all the better! :lol:
Evds
Junior Member
Junior Member
Posts: 90
Joined: 2009-06-10, 11:09 UTC

Post by *Evds »

@aRIEL242, Thx for the plugin !

I get an exception when there's an empty file (0 bytes) in the directory: Acess violation at address 01C42E46. Write of address 000000004.
downtime
Junior Member
Junior Member
Posts: 4
Joined: 2011-09-30, 18:21 UTC
Location: Netherlands

Post by *downtime »

aRIEL242, thank you for LotsOfHashes. It looks like a promising replacement for WdHash and other similar plugins.

Unfortunately, the CRC32 values that it generates are different from the values I got from WdHash. For instance: The hash for tcm801x32_64.exe (the 32/64-bit installer for Total Commander 8.01 Final) is c1675c9a using LotsOfHashes, but f7149669 with WdHash.

This is an issue for me, because I usually include the CRC32-values of my downloads in their filenames, so the song 'rain.mp3' I just downloaded (and renamed to 'rain [abcd1234].mp3', for example) doesn't overwrite the song 'rain.mp3' I downloaded earlier, and which is probably a different song, from an entirely different artist.

Would it be possible to make LotsOfHashes generate the same values as WdHash?
Evds wrote:I get an exception when there's an empty file (0 bytes) in the directory: Acess violation at address 01C42E46. Write of address 000000004.
I can confirm this issue, using TC 8.0.
User avatar
aRIEL242
Junior Member
Junior Member
Posts: 64
Joined: 2009-06-29, 12:31 UTC

Post by *aRIEL242 »

Download New Version (LotsOfHashes v1.2)
Evds wrote:I get an exception when there's an empty file (0 bytes) in the directory: Acess violation at address 01C42E46. Write of address 000000004.
downtime wrote:... I can confirm this issue, using TC 8.0.
FIXED - Exception when file is empty. Check for zero file size before accessing cache.

EricB wrote:... this also renders errors for some Hash values. The error displayed is 'Exception in ContentGetValue'. The erroneous algorithms are MD5 and all SHA1/SHA2 varieties.
CHANGED - Remove dependency in Windows cryptography (Wincrypt). MD5 and SHA1/SHA2 algorithms re-implemented.
downtime wrote:Unfortunately, the CRC32 values that it generates are different from the values I got from WdHash. ... Would it be possible to make LotsOfHashes generate the same values as WdHash?
The CRC32 algorithm that I'm using is the same one implemented by PKZIP and TC itself (TC menu: Files -> Create Checksum Files(s)). The wdHash plugin is using a different variation of the algorithm. The one I used is commonly named CRC32b but I dropped the 'b' to avoid confusion since I did not intend to implement both of them.

Now, after your request, I reconsidered.
CHANGED - Current CRC32 algorithm was renamed to CRC32b (algorithm used by PKZIP).
ADDED - CRC32 hash algorithm (used by ethernet and wdHash) is now supported.


More information in the readme.txt file.
User avatar
EricB
Senior Member
Senior Member
Posts: 355
Joined: 2008-03-25, 22:21 UTC
Location: The Netherlands

Post by *EricB »

Hi Ariel,

I can confirm that MD5 and SHA1/2 algorithms are now working without any crashes. Zero byte files do not render any crashes and hash remains empty. Caching seems to do the job very well: if a folder with large files was formerly accessed, the hash values are displayed nearly instantaneous. Well done!

Regards, EricB
Post Reply