LZW-viewer


Code, um den Inhalt einer LZH-Datei anzuzeigen.

Autor: SWAG-SUPPORT-TEAM

Program Lzhview;

Verwendet
DOS, Crt;

Const
BSize = 4096; {I/o-Puffergröße}

Geben Sie LZHHead = Datensatz
HSize: Byte;
Fill1: Byte;
Methode: Array [1..5] char;
CompSize: LongInt;
UCompSize: LongInt;
Dos_DT: LongInt;
Fill2: Word;
FileNameLen: Byte;
Dateiname: Array [1..12] char;
Ende;

Var LZH1: LZHHead;
DT: DateTime;
FSize, L, C: LongInt;
F: Datei;
STÄRKUNGSZAUBER: Byte-Array [1..BSize];
Datum: String [8]; {formatiertes Datum als JJ/MM/TT}
Zeit: String [6]; {'Zeit als hh: mm}
RES: Word;
DIR: DirStr;
FNAME: NameStr;
EXT: ExtStr;
LZHString,
SName: String;
Beenden: Boolean;
SW: Pointer;

Funktion Upper(st:String):String;
Var ich: Integer;
beginnen
Für i: = 1 bis length(st)-tun-St [i]: = upcase(st[i]);
Oberösterreich: = St;
Ende;

Funktion Ord_to_str(i:LongInt;j:Byte):String;
Var C:String;
beginnen
Str(i,c);
Während length(c) 0 dann
beginnen
Bewegen Sie (FileNameLen, SNAME, FileNameLen + 1);
UnPackTime (Dos_DT, DT);
FSize: = CompSize
Ende
sonst beenden: = True
Ende; {GET_LZH_ENTRY}

Prozedur DO_LZH (FN: String);
Var Fnstr, LZHMeth: String;
FLS, Totu, Totc: LongInt;
beginnen
ToTu: = 0; TotC: = 0; FLS: = 0;
Ordnen Sie zu (F, FN);
{$I-} Zurücksetzen Sie (F, 1); {$I+}
Wenn Ioresult <> 0 dann
beginnen
Writeln(Upper(FN)+ 'nicht gefunden');
Ausfahrt;
Ende;
FSize: = FileSize(F);
C: = 0;
Beenden: = False;
Writeln ('LZH Datei: '+ upper(FN));
Writeln;
Writeln ('Filename OrigSize CompSize Methode Datum'
'+'Zeit');
Writeln('------------ -------- -------- -------- --------'
+' ------');
Wiederholen Sie die
GET_LZH_ENTRY;
Wenn nicht dann beenden
beginnen
FSplit (SNAME, DIR, FNAME, EXT);
Fnstr: = FNAME + EXT;
Während length(fnstr) < 12 füge (' ', fnstr,length(fnstr)+1);
FDT (LZH1. Dos_DT);
Inc(ToTu,lzh1.ucompsize);
Inc(TotC,lzh1.compsize) aus;
Inc(FLS,1);
RS LZH1. Methode [4] {normalerweise nur 0,1 oder 5}
'0': LZHMeth: = 'Gespeichert';
'1': LZHMeth: = 'Gefroren 1';
'2': LZHMeth: = 'Gefroren 2';
'3': LZHMeth: = 'Gefroren 3';
'4': LZHMeth: = 'Gefroren 4';
'5': LZHMeth: = 'Gefroren 5';
sonst LZHMeth: = 'Unbekannt';
Ende;
LZHString: = Fnstr +' ' + Ord_to_str (LZH1. UCompsize, 8) +' ' +
ord_to_str(LZH1.Compsize,8) +' '+ Lzhmeth +' '
+ DATUM +' ' + ZEIT;
Writeln(LZHString);
Ende;
Inc (C, FSize + LZH1. HSize + 2)
Erst beenden;
Nähe (F);
Writeln('------------ -------- -------- -------- --------'
+' -----');
Writeln(ord_to_str(FLS,5) +' Dateien '+ ord_to_str(totu,8) +' '
+ ord_to_str(totc,8));
Ende; {DO_LZH}

beginnen
ClrScr;
do_lzh('whatever.lzh'); {<--setzen Sie Dateinamen hier}
Ende.









LZW-viewer


LZW-viewer : Mehreren tausend Tipps, um Ihr Leben einfacher machen.


Code, um den Inhalt einer LZH-Datei anzuzeigen.

Autor: SWAG-SUPPORT-TEAM

Program Lzhview;

Verwendet
DOS, Crt;

Const
BSize = 4096; {I/o-Puffergröße}

Geben Sie LZHHead = Datensatz
HSize: Byte;
Fill1: Byte;
Methode: Array [1..5] char;
CompSize: LongInt;
UCompSize: LongInt;
Dos_DT: LongInt;
Fill2: Word;
FileNameLen: Byte;
Dateiname: Array [1..12] char;
Ende;

Var LZH1: LZHHead;
DT: DateTime;
FSize, L, C: LongInt;
F: Datei;
STÄRKUNGSZAUBER: Byte-Array [1..BSize];
Datum: String [8]; {formatiertes Datum als JJ/MM/TT}
Zeit: String [6]; {'Zeit als hh: mm}
RES: Word;
DIR: DirStr;
FNAME: NameStr;
EXT: ExtStr;
LZHString,
SName: String;
Beenden: Boolean;
SW: Pointer;

Funktion Upper(st:String):String;
Var ich: Integer;
beginnen
Für i: = 1 bis length(st)-tun-St [i]: = upcase(st[i]);
Oberösterreich: = St;
Ende;

Funktion Ord_to_str(i:LongInt;j:Byte):String;
Var C:String;
beginnen
Str(i,c);
Während length(c) 0 dann
beginnen
Bewegen Sie (FileNameLen, SNAME, FileNameLen + 1);
UnPackTime (Dos_DT, DT);
FSize: = CompSize
Ende
sonst beenden: = True
Ende; {GET_LZH_ENTRY}

Prozedur DO_LZH (FN: String);
Var Fnstr, LZHMeth: String;
FLS, Totu, Totc: LongInt;
beginnen
ToTu: = 0; TotC: = 0; FLS: = 0;
Ordnen Sie zu (F, FN);
{$I-} Zurücksetzen Sie (F, 1); {$I+}
Wenn Ioresult <> 0 dann
beginnen
Writeln(Upper(FN)+ 'nicht gefunden');
Ausfahrt;
Ende;
FSize: = FileSize(F);
C: = 0;
Beenden: = False;
Writeln ('LZH Datei: '+ upper(FN));
Writeln;
Writeln ('Filename OrigSize CompSize Methode Datum'
'+'Zeit');
Writeln('------------ -------- -------- -------- --------'
+' ------');
Wiederholen Sie die
GET_LZH_ENTRY;
Wenn nicht dann beenden
beginnen
FSplit (SNAME, DIR, FNAME, EXT);
Fnstr: = FNAME + EXT;
Während length(fnstr) < 12 füge (' ', fnstr,length(fnstr)+1);
FDT (LZH1. Dos_DT);
Inc(ToTu,lzh1.ucompsize);
Inc(TotC,lzh1.compsize) aus;
Inc(FLS,1);
RS LZH1. Methode [4] {normalerweise nur 0,1 oder 5}
'0': LZHMeth: = 'Gespeichert';
'1': LZHMeth: = 'Gefroren 1';
'2': LZHMeth: = 'Gefroren 2';
'3': LZHMeth: = 'Gefroren 3';
'4': LZHMeth: = 'Gefroren 4';
'5': LZHMeth: = 'Gefroren 5';
sonst LZHMeth: = 'Unbekannt';
Ende;
LZHString: = Fnstr +' ' + Ord_to_str (LZH1. UCompsize, 8) +' ' +
ord_to_str(LZH1.Compsize,8) +' '+ Lzhmeth +' '
+ DATUM +' ' + ZEIT;
Writeln(LZHString);
Ende;
Inc (C, FSize + LZH1. HSize + 2)
Erst beenden;
Nähe (F);
Writeln('------------ -------- -------- -------- --------'
+' -----');
Writeln(ord_to_str(FLS,5) +' Dateien '+ ord_to_str(totu,8) +' '
+ ord_to_str(totc,8));
Ende; {DO_LZH}

beginnen
ClrScr;
do_lzh('whatever.lzh'); {<--setzen Sie Dateinamen hier}
Ende.


LZW-viewer

LZW-viewer : Mehreren tausend Tipps, um Ihr Leben einfacher machen.
LZW-viewer
Wiezutun
Freunden empfehlen
  • gplus
  • pinterest

Kommentar

Einen Kommentar hinterlassen

Wertung