home *** CD-ROM | disk | FTP | other *** search
- {
- The following Program is a slight modification of one posted by Zach
- Linnet. The problem is it doesn't lock the use of the File and allows
- multiple PC's to access the File at the same time. Also, it seems to
- take input from the keyboard when it isn't supposed to and I am unable
- to locate why. How could I improve this to actually lock the File?
- What if I just wanted to lock one or two Records?
- }
-
- Program Sample_File_Locking_Program;
- Uses
- Crt;
- Type
- Fi = File of Integer;
- Var
- FileName : String;
- f : Fi;
- x, n : Integer;
- Choice : Char;
-
- begin
- {$I-}
- FileName := 'e:\test\test.dat';
- Assign(f,FileName);
- Repeat
- Write('Option [rwq] ? '); choice := ReadKey;
- Writeln(choice);
- Case choice of
- 'r' : begin
- Writeln('Attempting to read : ');
- Reset(f);
- While Ioresult <> 0 do
- begin
- Writeln('Busy waiting...');
- Reset(f);
- end;
- Write('Reading now...');
- For x := 1 to 1000 do
- Read(f,n);
- Writeln('done!');
- Close(f);
- end;
- 'w' : begin
- Writeln('Attempting to Write : ');
- Reset(f);
- if Ioresult = 2 then
- ReWrite(f);
- While Ioresult <> 0 do
- begin
- Writeln('Busy waiting...');
- Reset(f);
- end;
- Write('Writing now...');
- For x := 1 to 1000 do
- Write(f,x);
- Writeln('done!');
- Close(f);
- end;
- end; { Case }
- Until Choice = 'q';
- {$I+}
- end.