home *** CD-ROM | disk | FTP | other *** search
- { ──────────────────────────────────────────────────────────────── }
- { DEMOPROGRAMM UNIT "MANYFILE" }
- { ──────────────────────────────────────────────────────────────── }
- { Demonstriert die Auswirkungen, wenn die Unit "MANYFILE" einge- }
- { bunden wird. Ohne ManyFile können maximal 20 Dateien geöffnet }
- { werden (unabhängig vom "FILES="-Eintrag in der CONFIG.SYS !!! }
- { Die Standard-Geräte wie COMx, PRN, STDIN, STDOUT etc. zählen }
- { dabei überigens zu den 20, sprich es bleiben so um die 12), mit }
- { ManyFile ist der Maximalwert 255 Dateien (bzw. der "FILES="- }
- { Eintrag der CONFIG.SYS), von denen auch etwas mehr übrigbleiben. }
- { ──────────────────────────────────────────────────────────────── }
- { Es wird versucht, 100 mal den eigenen Quelltext zu öffnen, alle }
- { Versuche, bei denen ein Fehler aufgetreten ist, werden proto- }
- { kolliert. }
- { ──────────────────────────────────────────────────────────────── }
- { Achtung: Wenn SHARE oder ein NetBIOS-Treiber installiert ist, }
- { funktioniert dieses Demo aus einem anderen Grunde nur für ein }
- { File - vergleiche "UNITS08" ! }
- { ──────────────────────────────────────────────────────────────── }
- { (c) 1991 by Aurora featuring M.J. Schwaiger }
- { ──────────────────────────────────────────────────────────────── }
- { History: }
- { 1992-04-15 MS Interfacefestlegung und Implementierung. }
- { ──────────────────────────────────────────────────────────────── }
-
- {$UNDEF Windows} { Für Windows: $DEFINE Windows }
- {$UNDEF Many} { $DEFINE: ManyFile wird eingebunden }
-
- PROGRAM AddOn03;
-
- USES
- {$IFDEF Many}
- ManyFile,
- {$ENDIF}
- {$IFDEF Windows}
- WINCRT,
- WINDOS;
- {$ELSE}
- CRT,
- DOS;
- {$ENDIF}
-
-
- VAR
- Arr : ARRAY [1 .. 100] OF FILE;
- Cnt : BYTE;
- Result : INTEGER;
-
-
- BEGIN
- FOR Cnt := 1 TO 100 DO
- BEGIN
- {$I-}
- ASSIGN (Arr [Cnt], 'ADDON03.PAS');
- RESET (Arr [Cnt]);
- {$I+}
- Result := IORESULT;
-
- IF Result <> 0 THEN
- WRITELN (Cnt, ': ', Result);
- END;
-
- FOR Cnt := 1 TO 100 DO { Saubere Programmierung - aber }
- {$I-} { Turbo würde sie eigentlich schon selber wieder schließen }
- CLOSE (Arr [Cnt]);
- {$I+}
- END. { PROGRAM AddOn03 }
-