Supportnet / Forum / Skripte(PHP,ASP,Perl...)
VB Dateien
Frage
Ich lese die Daten aus einer Datei und schreibe sie in eine andere Datei, dann sind aber auf einmal mehr Daten (manchmal 2, manchmal 3 byte) vorhanden. Warum??
Muss ich ein EOF setzen?
Was kann ich machen?
Hier noch der Quellcode:: (wichtig ab: <<<<)
----------------------
Dim ByteArray(1 To 1000) As Byte
Dim i As Integer
Dim x As Integer
Dim Size As Integer
Dim RestSize As Integer
Dim FileName As String
Dim NewFileName As String
Dim Lenge As Integer
Wibukey.FirmCode = 10
Wibukey.UserCode = 13
Wibukey.EncryptMode = 0
i = 0
x = 0
CMD1.CancelError = True
CMD1.DialogTitle = "Datei Öffnen"
On Error Resume Next
CMD1.ShowOpen
If Err = 0 Then
Open CMD1.FileName For Binary As #1
End If
Size = LOF(1)
Text1.Text = ""
Text2.Text = Size
Lenge = Len(CMD1.FileName)
FileName = CMD1.FileName
NewFileName = Mid(FileName, 1, Lenge - 4) + "crypt.out"
Open NewFileName For Binary As #2
<<<<< wichtig ab hier!
While Size > 0
If Size >= 1000 Then
For i = 1 To 1000
Get #1, i + x, ByteArray(i)
Size = Size - 1
Next
Wibukey.ByteArrayData() = ByteArray()
Wibukey.Encrypt
For i = 1 To 1000
Text1.Text = Text1.Text + Chr$(Wibukey.ByteArrayData(i))
Put #2, i + x, Chr$(Wibukey.ByteArrayData(i))
Next
x = x + 1000
Else
RestSize = Size
i = 0
While Size > 0
i = i + 1
Get #1, i + x, ByteArray(i)
Size = Size - 1
Wend
Wibukey.ByteArrayData() = ByteArray()
Wibukey.Encrypt
For i = 1 To RestSize
Text1.Text = Text1.Text + Chr$(Wibukey.ByteArrayData(i))
Put #2, i + x, Chr$(Wibukey.ByteArrayData(i))
Next
End If
Wend
Close #1
Close #2
---------------------------
vielen Dank
Saemy
Antwort 1 von robbie17
Antwort 2 von Saemy
Das habe ich natürlich schon gemacht... es sind immer nur die letzten bytes anders, welche nicht da sein sollten...

