home *** CD-ROM | disk | FTP | other *** search
/ C!T ROM 5 / ctrom5b.zip / ctrom5b / PROGRAM / PASCAL / DRIVEI2 / DTEST.PAS < prev    next >
Pascal/Delphi Source File  |  1995-02-27  |  1KB  |  58 lines

  1. Program DTest;
  2.  
  3. {$IFDEF WINDOWS}
  4. Uses Drives, WinCRT, Strings;
  5. {$ELSE}
  6. Uses Drives, Strings;
  7. {$ENDIF}
  8.  
  9. Type
  10.     TypesArray = Array [TDriveTypes] Of String[ 8 ];
  11. Const
  12.     TypeNames: TypesArray =
  13.       ( 'FLOPPY', 'HARDDISK','REMAPPED','REMOTE','CD_ROM',
  14.       'RAMDISK','INVALID' );
  15. Var
  16.     n: TDriveNums;
  17.     Map: TDriveMap;
  18.     first: Boolean;
  19.     f: TDriveTypes;
  20.  
  21. Procedure WriteInfo( Const di: TDriveInfo );
  22.     Begin
  23.         If ([ INVALID, CD_ROM, FLOPPY ] * di.Flags ) = [] Then Begin
  24.           Write( '  ' );
  25.             If not(REMOTE In di.Flags) Then Begin
  26.               WriteLn( 'Volumen Name: ', StrPas(@di.Info.VolName),
  27.                        ', Serial-No.: ', di.Info.SerialNo,
  28.                        ', FAT-TYpe: ', StrPas(@di.Info.FATType) );
  29.             End { If }
  30.             Else
  31.               WriteLn( 'Netshare: ', StrPas(@di.DevName));
  32.         End; { If }
  33.     End; { WriteInfo }
  34.  
  35. Begin
  36. {$IFDEF WINDOWS}
  37.   ScreenSize.Y := 80;
  38. {$ENDIF}
  39.  
  40.   BuildDriveMap( Map );
  41.     For n := Min_DriveNums To Max_DriveNums Do Begin
  42.       first := True;
  43.         Write( 'Drive ',Chr( n+Ord( '@' ) ),': [' );
  44.         For f := Low( TDriveTypes ) To High( TDriveTypes )  Do Begin
  45.           If f in Map[ n ].Flags Then Begin
  46.               If first Then 
  47.                   first := false
  48.                 Else
  49.                   Write( ', ' );
  50.                 Write( TypeNames[ f ] );
  51.           End; { If }
  52.         End; { For }
  53.         WriteLn(']');
  54.         WriteInfo( Map[ n ] );
  55.     End; { For }
  56.     
  57. End.
  58.