谁帮我详细解释一下VB代码(最好每行都解释一下,谢谢!)

来源:百度知道 编辑:UC知道 时间:2024/09/28 11:08:40
Private Sub Form_Load()

p$ = InputBox("输入欲加密文件的完整路径", "文件加密", "c:\boot.ini")

ReDim arr(FileLen(p)) As Byte
Open p For Binary As #1
arr = InputB(LOF(1), 1)
Close #1
For i& = 0 To UBound(arr)
arr(i) = arr(i) Xor (i Mod 256)
Next
p = StrReverse$(Replace$(StrReverse$(p), ".", ".edocnE_", , 1))
Open p For Binary As #1
Put #1, , arr
Close #1
MsgBox "加密完成"

ReDim arr(FileLen(p)) As Byte
Open p For Binary As #1
arr = InputB(LOF(1), 1)
Close #1
For i& = 0 To UBound(arr)
arr(i) = arr(i) Xor (i Mod 256)
Next
p = Replace(p, "_Encode", "_Uncode")
Open p For Binary As #1
Put #1, , arr
Close #1
MsgBox "解密完成"

End
End Sub

Private Sub Form_Load() '窗体装载事件,当窗体运行时执行,只执行一次

p$ = InputBox("输入欲加密文件的完整路径", "文件加密", "c:\boot.ini") '输入带路径的文件名,并存放到变量P中

ReDim arr(FileLen(p)) As Byte '重定义一个数组,根据路径变量P的长度来定,类型为字节型
Open p For Binary As #1 '以二进制的形式打开P文件
arr = InputB(LOF(1), 1) '读取文件中的数据并存放到数组Arr中
Close #1 '关闭打开的文件
For i& = 0 To UBound(arr) '循环Arr数组
arr(i) = arr(i) Xor (i Mod 256) '读取当前的Arr数组下标所对应的内容,并与 下标除于256的余数进行异或运算,运算的结果反过来存入Arr(i)中
Next
p = StrReverse$(Replace$(StrReverse$(p), ".", ".edocnE_", , 1)) '先将P反序排列,再查找第一个.将其替换成.edocnE_ 再将结果反序后存入P
Open p For Binary As #1
Put #1, , arr
Close #1
MsgBox "加密完成"

ReDim arr(FileLen(p)) As Byte
Open p For Binary As #1
arr = InputB(LOF(1), 1)
Close #1
For i& = 0 To UBound(arr)
arr(i) = arr(i) Xor (i Mod 256)
Next
p = Replace(p, "_Encode&