VBS获取文件MD5值(无组件)
程序员文章站
2022-03-21 16:37:25
下面这个代码不需要组件一样可以获取md5值。
复制代码 代码如下:option explicitdim widim filedim file_sizedim file_a...
下面这个代码不需要组件一样可以获取md5值。
复制代码 代码如下:
option explicit
dim wi
dim file
dim file_size
dim file_attributes
dim file_version
dim file_hash
set wi = createobject("windowsinstaller.installer")
file = "111.exe"
file_size = wi.filesize(file)
file_attributes = wi.fileattributes(file)
file_version = wi.fileversion(file)
file_hash = getfilehash(file)
set wi = nothing
msgbox "file: " & file & vbcrlf & _
"size: " & file_size & vbcrlf & _
"attributes: " & file_attributes & vbcrlf & _
"version: " & file_version & vbcrlf & _
"md5: " & file_hash
function getfilehash(file_name)
dim file_hash
dim hash_value
dim i
set file_hash = wi.filehash(file_name, 0)
hash_value = ""
for i = 1 to file_hash.fieldcount
hash_value = hash_value & bigendianhex(file_hash.integerdata(i))
next
getfilehash = hash_value
set file_hash = nothing
end function
function bigendianhex(int)
dim result
dim b1, b2, b3, b4
result = hex(int)
b1 = mid(result, 7, 2)
b2 = mid(result, 5, 2)
b3 = mid(result, 3, 2)
b4 = mid(result, 1, 2)
bigendianhex = b1 & b2 & b3 & b4
end function
上一篇: TP SQL统计查询语法