summaryrefslogtreecommitdiff
path: root/fpcsrc/tests/webtbs/tw0912.pp
blob: 1ff59875e9b82eae02c0d220b1eb1a35eed8a613 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
const
  BufSize = 2048;

var
  f : file;
  res : longint;
  buf : array [0..BufSize-1] of byte;
  result : word;
begin
assign(f,paramstr(0));
{$I-}
reset(f,1);
res:=IOResult;
{$I+}
if res=0 then
  Writeln('It is possible to open the executable in Read/Write mode')
else
  begin
    filemode:=0;
    {$I-}
    reset(f,1);
    res:=IOResult;
    {$I+}
    if res=0 then
      Writeln('It is only possible to open the executable in Read mode')
    else
      Writeln('It is not possible to open the executable in Read mode');
  end;
if res=0 then
  begin
{$I-}
    blockread(f,buf,sizeof(buf),result);
    res:=IOResult;
{$I+}
    if res<>0 then
      Writeln('Problem reading executable');
    if res=0 then
      close(f)
    else
      RunError(res);
  end
else
  RunError(res);
end.