j'envoyer un e-mail aux développeurs comme on dirait qu'ils ont compilé des exportations dirent et ont appelé phash. Certainement quelque chose pas juste là. J'obtiens le même résultat que vous depuis la DLL dans les dossiers Release et Debug à partir de la page de téléchargement.
Je viens compilé moi-même, en utilisant les commandes suivantes:
g++ -c *.cpp
g++ -shared pHash.o -o pHash.dll
et je reçois les fonctions exportées suivantes:
_Z19ph_hamming_distanceyy
ph_about
ph_bitcount8
ph_compare_text_hashes
ph_hammingdistance2
ph_readfilenames
ph_texthash
phash_version
je peux alors appeler la fonction ph_about
de AutoIt:
MsgBox(0, "ph_about", ph_about())
Func ph_about()
Local $aResult = DllCall("pHash.dll", "str", "ph_about")
If @error Then Return SetError(@error, @extended, "")
Return $aResult[0]
EndFunc ;==>ph_about
Si vous avez juste besoin de hachage de texte et que vous n'avez pas le t oolchain installé alors envoyez-moi un email et je vous enverrai le binaire que j'ai compilé. Je n'ai pas d'hébergement permanent donc je ne vais pas ajouter le lien ici où il va pourrir dans quelques mois.
Comme mentionné dans mon commentaire, si vous voulez hash des fichiers images ou vidéo, vous devez installer les dépendances figurant sur this page et compiler avec les drapeaux HAVE_IMAGE_HASH
et HAVE_VIDEO_HASH
fixés.
Quel est le problème? Vous avez 6 fonctions: closedir, opendir, readdir, rewinddir, seekdir et telldir. Combien devraient être là? – VixinG
En regardant le fichier d'en-tête, vous devrez peut-être installer certaines des dépendances, puis recompiler avec le 'HAVE_IMAGE_HASH' et' HAVE_VIDEO_HASH'. Il est inhabituel sur Windows de s'attendre à ce que l'utilisateur compile le binaire. – Matt