Hallo,
habe einen Dateiblocker erweitert mit dem man ganz einfach Dateien unöffbar machen kann.
Grundidee: Das erste Byte der Datei zu manipulieren.
Getestet mit pdf, jpg, mp4, exe, rar
Funktioniert nicht mit mp3 (wahrsch. muss man einfach mehrere Bytes manipulieren) und auch nicht mit txt (weils halt ne txt ist).
Vorteil: Man kann blitzschnell Dateien für Laien "verschlüsseln". Da immer nur das 1. Byte verändert wird, dauert es bei einer 500mb-Datei genauso lange wie bei einer 5kb-Datei.
Man braucht 2 Buttons und ein Label:
Quelle: visual-basic5.de/vbclassic/dotnet/magicheader.htm
habe einen Dateiblocker erweitert mit dem man ganz einfach Dateien unöffbar machen kann.
Grundidee: Das erste Byte der Datei zu manipulieren.
Getestet mit pdf, jpg, mp4, exe, rar
Funktioniert nicht mit mp3 (wahrsch. muss man einfach mehrere Bytes manipulieren) und auch nicht mit txt (weils halt ne txt ist).
Vorteil: Man kann blitzschnell Dateien für Laien "verschlüsseln". Da immer nur das 1. Byte verändert wird, dauert es bei einer 500mb-Datei genauso lange wie bei einer 5kb-Datei.
Man braucht 2 Buttons und ein Label:
VB.NET-Quellcode
- Imports System.IO
- Public Class Form1
- Private Function GetFilename() As String
- Dim ofd As New OpenFileDialog
- Dim Filename As String
- With ofd
- .Title = "Open File"
- .RestoreDirectory = True
- .Filter = "All files|*.*"
- If .ShowDialog() = DialogResult.OK Then
- Filename = .FileName
- Return Filename
- Else
- Filename = String.Empty
- Return Filename
- End If
- End With
- End Function
- Private Sub BlockFile(ByVal Filename As String, Encrypt As Boolean)
- If File.Exists(Filename) Then
- Dim fs As New FileStream(Filename, FileMode.Open)
- Dim br As New BinaryReader(fs)
- Dim Content As Byte = br.ReadByte
- If Encrypt = True Then
- If Content = 255 Then Content = 0 Else Content += 1
- Else
- If Content = 0 Then Content = 255 Else Content -= 1
- End If
- br.Close()
- Dim bw As New BinaryWriter(New FileStream(Filename, FileMode.OpenOrCreate))
- bw.Write(Content)
- bw.Close()
- End If
- End Sub
- Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
- 'Original wird unbrauchbar gemacht
- Dim Filename As String = GetFilename()
- If (Not Filename Is String.Empty) Then
- BlockFile(Filename, True)
- Label1.Text = "blocked"
- End If
- End Sub
- Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles Button2.Click
- 'Unbrauchbare Datei wieder in den Originalzustand versetzen
- Dim Filename As String = GetFilename()
- If (Not Filename Is String.Empty) Then
- BlockFile(Filename, False)
- Label1.Text = "unblocked"
- End If
- End Sub
- End Class
Quelle: visual-basic5.de/vbclassic/dotnet/magicheader.htm
Für ein Mindestmaß an Rechtschreibung, Interpunktion und Majuskeln!