Collez le code suivant dans votre script:
Fonction publique MD5Hash (sFileName)
'Ce script est fourni sous la licence Creative Commons situé
'au https://creativecommons.org/licenses/by-nc/2.5/. Il ne peut pas
'être utilisé à des fins commerciales avec le consentement écrit
'de NateRice.com
Const OpenAsDefault = -2
Const FailIfNotExist = 0
Const ForReading = 1
Dim oMD5CmdShell, oMD5CmdFSO, sTemp, sTempFile, fMD5CmdFile, sPath
Dim fResultsFile, sResults
Réglez oMD5CmdShell = CreateObject ("WScript.Shell")
Réglez oMD5CmdFSO = CreateObject ("Scripting.FileSystemObject")
sTemp = oMD5CmdShell.ExpandEnvironmentStrings ("% TEMP%")
sTempFile = sTemp & "" & oMD5CmdFSO.GetTempName
«------ Vérifier fichier d'entrée Existance ----;
Si non oMD5CmdFSO.FileExists (sFilename), puis
MD5Hash = "Échec: Fichier d'entrée non valide."
Autre
Réglez fMD5CmdFile = oMD5CmdFSO.GetFile (sFileName)
sPath = fMD5CmdFile.ShortPath
sFileName = sPath
Réglez fMD5CmdFile = Nothing
Fin si
'-------------------------------------;
oMD5CmdShell.Run "% comspec% / c md5.exe -n " & sFileName & _
" gt; " & sTempFile, 0, True
Réglez fResultsFile = _
oMD5CmdFSO.OpenTextFile (sTempFile, ForReading, FailIfNotExist, OpenAsDefault)
sResults = fResultsFile.ReadAll
sResults = TRIM (Remplacer (sResults, vbCRLF,""))
fResultsFile.Close
oMD5CmdFSO.DeleteFile sTempFile
Si len (sResults) = 32 et IsHex (sResults) Ensuite,
MD5Hash = sResults
Autre
MD5Hash = "Échoué."
Fin si
Réglez oMD5CmdShell = Nothing
Réglez oMD5CmdFSO = Nothing
End Function
Private Function IsHex (sHexCheck)
'Ce script est fourni sous la licence Creative Commons situé
'au https://creativecommons.org/licenses/by-nc/2.5/. Il ne peut pas
'être utilisé à des fins commerciales avec le consentement écrit
'de NateRice.com
Dim SX, bCharCheck, sHexValue, sHexValues, aHexValues
sHexCheck = UCase (sHexCheck)
sHexValues = "0,1,2,3,4,5,6,7,8,9, A, B, C, D, E, F"
aHexValues = split (sHexValues, ",")
Pour SX = 1 Pour Len (sHexCheck)
bCharCheck = FalsePour chaque sHexValue Dans aHexValues
Si UCase (Mid (sHexCheck, SX, 1)) = Alors sHexValue
bCharCheck = True
Exit For
Fin si
Suivant
Si bCharCheck lt; gt; True Then
IsHex = False
Exit Function
Fin si
Suivant
IsHex = True
End Function