Code:Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (ByVal Destination As Long, ByVal Source As Long, ByVal Length As Integer) Function GetEOF(ByVal Path As String) As Long Dim ByteArray() As Byte Dim PE As Long, NumberOfSections As Integer Dim BeginLastSection As Long Dim RawSize As Long, RawOffset As Long FileOpen(10, Path, OpenMode.Binary, OpenAccess.Default) ReDim ByteArray(LOF(10) - 1) FileGet(10, ByteArray) FileClose(10) Call CopyMemory(PE, ByteArray(&H3C), 4) Call CopyMemory(NumberOfSections, ByteArray(PE + &H6), 2) BeginLastSection = PE + &HF8 + ((NumberOfSections - 1) * &H28) Call CopyMemory(RawSize, ByteArray(BeginLastSection + 16), 4) Call CopyMemory(RawOffset, ByteArray(BeginLastSection + 20), 4) GetEOF = RawSize + RawOffset End Function