Program Hudson;
(*************)
{ Teste le format de la base hudson }
uses crt;
Type
MsgToIdxRecord = String[35];
FlagType = Array[1..4] of Byte;
Lastreadrecord = Array[1..200] of integer;
Netnode = Record
Zone,
Net,
Node : Word;
end;
NetAdress = record
Zone,
Net,
Node,
Point : Word;
end;
InfoRecord = Record
LowMsg: integer;
HighMsg: integer; (* MSGINFO.BBS *)
TotalActive: integer;
ActiveMsgs: Array[1..200] of Integer;
End;
IdxRecord = Record
Msgnum: Integer; (* MSGIDX.BBS *)
Board: Byte;
end;
HdrRecord = Record
MsgNum, (* MSGHDR.BBS *)
ReplyTo,
SeeAlsoNum,
TimesRead: Integer; { Not used}
StartRec: Word; { Je pense que c'est ce que je cherchais non ? }
NumRecs, {Tient ! ca aussi ! }
DestNet,
DestNode,
OrigNet,
OrigNode: Integer;
Destzone,
Origzone: Byte;
Cost: Integer;
MsgAttr,
Netattr,
Board: Byte;
PostTime: String[5];
PostDate: String[8];
WhoTo,
WhoFrom: MsgToIdxRecord;
Subj: String[72];
End;
msgtoidx = Record
MSGToidxrecord : string[35];
end;
Type texte = string[255];
Var hdr : Hdrrecord;
ifr : inforecord;
txt2 : texte;
txt : msgtoidx;
fich : file of msgtoidx;
fich2 : file of texte;
fichier : file of hdrrecord;
I : integer;
J : integer;
touche : char;
begin
I := 0;
J := 0;
Repeat
Assign(fichier,'d:\messages\msghdr.bbs');
reset(fichier);
seek(fichier,I);
read(fichier,hdr);
close(fichier);
Assign(fich,'d:\messages\msgtoidx.bbs');
reset(fich);
seek(fich,I);
read(fich,txt);
close(fich);
clrscr;
writeln('----------------------------------------------------------------------------');
writeln('De : ',hdr.whofrom);
writeln('to : ',hdr.whoto);
writeln('Sujet : ',hdr.subj);
Writeln('_I_ : ',I);
Writeln('msgnum : ',hdr.msgnum);
writeln('txt : ',txt.MSGToidxrecord);
{ writeln('Date : ',hdr.postdate);
writeln('Time : ',hdr.posttime);
writeln('StartRec: ',hdr.startrec);
writeln('NumRecs : ',hdr.numrecs);}
writeln('----------------------------------------------------------------------------');
Assign(fich2,'D:\messages\msgtxt.bbs');
reset(fich2);
For J := 0 to hdr.numrecs-1 do
begin
seek(fich2,hdr.startrec+J);
read(fich2,txt2);
write(txt2);
end;
close(fich2);
writeln('----------------------------------------------------------------------------');
readln;
inc(I);
Until touche = 'a';
end.
syntax highlighted by Code2HTML, v. 0.9.1