Diese Funktion prüft ob eine Datei eine EXE Datei ist bzw eine PE (Portable Executable) Datei.
Die Idee kommt von Jan Welker das ist hier die optimierte Version.
''' <summary>
''' Diese Funktion prüft ob eine Datei eine EXE Datei ist bzw eine PE (Portable Executable) Datei.
''' </summary>
''' <param name="FileName">Die Datei die überprüft werden soll</param>
Public Function IsExeFile(ByVal FileName As String) As Boolean
Try
Dim FS As New FileStream(FileName, FileMode.Open, FileAccess.Read, FileShare.Read)
Dim Data(4) As Byte
FS.Seek(128, SeekOrigin.Begin)
FS.Read(Data, 0, 5)
FS.Close()
If (Data(0) = 80 And Data(1) = 69 And Data(2) = 0 And Data(3) = 0 And Data(4) = 76) Then
Return True
End If
Catch ex As Exception
Return False
End Try
End Function
1 Kommentare zum Snippet