'Ä=Ž , Ö=™ , Ü=š ; ä=„ , ö=”, ü= , ß=á ,§=õ , ©=¸, °=ø 'Tested with FB 0.16b using FBIde 0.4.6"; Option Escape Option Explicit Declare Function LoadAll(byVal DateiName$) As String Declare Function myHex(ByVal NoHex As LONGINT) As String Dim As String DateiName, m, d, b Dim As Long i, j Color 14, 1 Cls Input"Input full path of the file:";DateiName d=LoadAll(DateiName) Cls Locate 1, 1, 0 ?"Select the mode you want to show:" ?" (1) Hexadezimal" ?" (2) ASCII" ?" (3) Binary" ?" (X) Exit" Do m=UCase(Inkey) Sleep 1 Loop Until Instr("123X)", m) Select Case m Case "1" 'Monitor file Cls For i=1 To Len(d) Step 16 ?Right(" "& Hex(i-1), 7);Tab(8);" : "; For j=0 To 15 ?MyHex(Asc(Mid(d, i+j, 1)));" "; Next ?" "; For j=0 To 15 m=Mid(d, i+j, 1) If Asc(m$)<31 Then m="." ?m; Next If ((i-1) Mod 752)=0 And (i-1)<>0 Then Color 12 ?:? ?Tab(11);"*Any key to next page* *Cancel with Escape*"; Do m=Inkey$ Sleep 1 Loop Until m<>"" If m="\27" Then End Color 14 Cls Else ? End If Next Case "2" For i=1 To Len(d) b=Mid(d, i, 1) If Asc(b)>31 And Asc(b)<128 Then ?b; Next ? Case "3" ?"Wie gesagt, eine frhe Alpha-Version ;-))" Case "X" End End Select End Function myHex(byVal NoHex As LongInt) As String Dim As String J(2)={"", "0"}, Z=Hex(NoHex) Return J(Abs(Len(Z)<2)) &Z End Function Function LoadAll(byVal DateiName As String) As String Dim Datei=FreeFile, Puffer As String Ptr, g=0 'Variablen vorbelegen.. If Not g<0 And (g And &h10)=0 Then 'ist Datei vorhanden und kein Verzeichnis Open DateiName For Binary As #Datei 'Datei binär öffnen g=Lof(Datei) 'Dateigröße ermitteln Puffer=cAllocate(g)'Puffer reservieren *Puffer=Space$(g) 'Puffer vorbelegen Get #Datei,, *Puffer 'gesamt Datei inPuffer ablegen Close #Datei 'Datei schließen Function=*Puffer 'Funktionswert zuweisen, nicht Return, wg. nächste Zeile DeAllocate Puffer 'Puffer im Speicher freigeben, besser isses.. Else 'Ooops, da war was falsch If g<0 Then DateiName+=" fehlt.." ElseIf (g And &h10)<>0 Then DateiName+=" ist ein Verzeichnis.." Else DateiName="Oooops, mit " &DateiName &"stimmt was nich.." EndIf ?DateiName Sleep Function=DateiName End If End Function