Function MD5($strFileName)
Dim $adTypeBinary, $objStream, $objXML, $objXEL, $objMD5, $i, $intFinalBlock, $BinaryFile
$adTypeBinary = 1
$objStream = CreateObject("ADODB.Stream")
$objStream.Type = $adTypeBinary
$objStream.Open
$objStream.LoadFromFile($strFileName)
$objMD5 = CreateObject("System.Security.Cryptography.MD5CryptoServiceProvider")
$objMD5.Initialize
$BinaryFile = $objStream.Read
For $i=0 to $objStream.Size Step 31744
$=$objMD5.TransformBlock($BinaryFile, $i, 31744, $BinaryFile, $i)
If ($objStream.Size -$i) < 31744
$intFinalBlock = ($objStream.Size -$i)
$=$objMD5.TransformFinalBlock($BinaryFile, $i, $intFinalBlock)
EndIf
Next
$objXML = CreateObject("MSXML2.DOMDocument")
$objXEL = $objXML.CreateElement("tmp")
$objXEL.DataType = "bin.hex"
$objXEL.NodeTypedValue = $objMD5.Hash
$MD5 = $objXEL.Text
$objStream.Close
$objStream = ""
EndFunction