『求解求救!』球帮忙解决函数错误
vb.net吧
全部回复
仅看楼主
level 1
Private Function XOR_Encrypt(key As Integer, fileName As String, encryptFileName As String) As Boolean
On Error GoTo errHandler
Dim inputFileNo As Integer
Dim fileBytes() As Byte
Dim length As Long
XOR_Encrypt = False
Dim outputFileNo As Integer
inputFileNo = FreeFile()
FileOpen(inputFileNo, fileName, OpenMode.Binary)
outputFileNo = FreeFile()
FileOpen(outputFileNo, encryptFileName, OpenMode.Binary)
length = LOF(inputFileNo)
If length = 0 Then
MsgBox("退出加密:文件内容为空!", vbInformation, "提示")
Exit Function
End If
Do While FileLen(fileName) > FileLen(encryptFileName)
System.Windows.Forms.Application.DoEvents()
ReDim fileBytes(65535)
FileGet(inputFileNo, fileBytes)
Dim i As Long
For i = LBound(fileBytes) To UBound(fileBytes)
fileBytes(i) = fileBytes(i) Xor key
Next
FilePut(outputFileNo, fileBytes)
Loop
FileClose(outputFileNo)
FileClose(inputFileNo)
XOR_Encrypt = True
errHandler:
If Err.Number Then
MsgBox("加密过程中出错:" & Err.Description, vbCritical, "错误")
XOR_Encrypt = False
Resume Next
End If
End Function
以上是一个函数,在 FileGet(inputFileNo, fileBytes)处报错,错误为 偏移量和长度超出数组的界限,或者计数大于从索引到源集合结尾处的元素数量 求帮忙修正,或者给一个同样能够进行单文件加密的程序代码~
2014年08月05日 03点08分 1
level 13
此代码从vb6转换而来但比较别扭。
加密可以用AES算法(原版不是免费的),比这个安全。
2014年08月08日 15点08分 2
level 13
其实.net类库里有AES加密解密类,你自己找找教程
2014年08月08日 15点08分 3
受教了,我去看看[太开心]
2014年08月08日 18点08分
[url]https://tieba.baidu.com/p/3218299239?pid=55283909387&cid=0#55283909387 AES[/url]做出错了,求帮助
2014年08月09日 02点08分
1