(view source code of isfat.cs as plain text)
using System;
using System.IO;
namespace RobvanderWoude
{
class IsFAT
{
public static int Main( string[] args )
{
try
{
if ( args.Length == 0 )
{
return WriteError( string.Empty );
}
if ( args.Length > 1 )
{
return WriteError( "Invalid number of arguments." );
}
string drive = args[0].ToUpper( );
DriveInfo[] allDrives = DriveInfo.GetDrives( );
foreach ( DriveInfo drv in allDrives )
{
if ( drive == drv.Name.Substring( 0, 2 ) )
{
if ( drv.IsReady )
{
Console.WriteLine( drv.DriveFormat.ToUpper( ) );
if ( drv.DriveFormat == "FAT" || drv.DriveFormat == "FAT32" )
{
return 0;
}
else
{
return 2;
}
}
else
{
Console.WriteLine( drv.DriveType.ToString( ).ToUpper( ) );
return 1;
}
}
}
return WriteError( "Invalid drive specification." );
}
catch ( Exception e )
{
// Display help text with error message
return WriteError( e );
}
}
// Code to display help and optional error message, by Bas van der Woude
public static int WriteError( Exception e )
{
return WriteError( e == null ? null : e.Message );
}
public static int WriteError( string errorMessage )
{
string fullpath = Environment.GetCommandLineArgs( ).GetValue( 0 ).ToString( );
string[] program = fullpath.Split( '\\' );
string exeName = program[program.GetUpperBound( 0 )];
exeName = exeName.Substring( 0, exeName.IndexOf( '.' ) );
/*
IsFAT, Version 1.00
Return 'errorlevel' 0 if the specified drive is FAT or FAT32 formated
Usage: ISFAT drive:
Note: Returns 'errorlevel' 0 if FAT or FAT32, 2 if not, 1 if not ready or invalid
Written by Rob van der Woude
http://www.robvanderwoude.com
*/
if ( string.IsNullOrEmpty( errorMessage ) == false )
{
Console.Error.WriteLine( );
Console.ForegroundColor = ConsoleColor.Red;
Console.Error.Write( "ERROR: " );
Console.ForegroundColor = ConsoleColor.White;
Console.Error.WriteLine( errorMessage );
Console.ResetColor( );
}
Console.Error.WriteLine( );
Console.Error.WriteLine( "IsFAT, Version 1.00" );
Console.Error.WriteLine( "Return 'errorlevel' 0 if the specified drive is FAT or FAT32 formated" );
Console.Error.WriteLine( );
Console.Error.Write( "Usage: " );
Console.ForegroundColor = ConsoleColor.White;
Console.Error.WriteLine( "{0} drive:", exeName.ToUpper( ) );
Console.ResetColor( );
Console.Error.WriteLine( );
Console.Error.WriteLine( "Note: Returns 0 if FAT or FAT32, 2 if not, 1 if not ready or invalid." );
Console.Error.WriteLine( );
Console.Error.WriteLine( "Written by Rob van der Woude" );
Console.Error.WriteLine( "http://www.robvanderwoude.com" );
return 1;
}
}
}
page last modified: 2024-04-16; loaded in 0.0064 seconds