Display available file systems in usage screen

svn path=/trunk/; revision=24253
This commit is contained in:
Hervé Poussineau 2006-09-24 12:50:51 +00:00
parent c492ac0ccc
commit 9cea0fddde
7 changed files with 61 additions and 24 deletions

View file

@ -14,7 +14,7 @@ STRINGTABLE DISCARDABLE
STRING_HELP, "Usage: %S drive: [-FS:file-system] [-V:label] [-Q] [-A:size] [-C]\n\n\ STRING_HELP, "Usage: %S drive: [-FS:file-system] [-V:label] [-Q] [-A:size] [-C]\n\n\
[Datenträger:] Legt das Laufwerk zum Formatieren fest.\n\ [Datenträger:] Legt das Laufwerk zum Formatieren fest.\n\
-FS:file-system Legt das Dateisystem fest (z.B. FAT).\n\ -FS:file-system Legt das Dateisystem fest (%s).\n\
-V:label Legt den Datentraegernamen fest.\n\ -V:label Legt den Datentraegernamen fest.\n\
-Q Fuehre Schnellformatierung durch.\n\ -Q Fuehre Schnellformatierung durch.\n\
-A:size Ueberschreibe Anweisung fuer Standartblockgroesse. Es wird dringend\n\ -A:size Ueberschreibe Anweisung fuer Standartblockgroesse. Es wird dringend\n\

View file

@ -9,7 +9,7 @@ STRINGTABLE DISCARDABLE
{ {
STRING_HELP, "Usage: %S drive: [-FS:file-system] [-V:label] [-Q] [-A:size] [-C]\n\n\ STRING_HELP, "Usage: %S drive: [-FS:file-system] [-V:label] [-Q] [-A:size] [-C]\n\n\
[drive:] Specifies the drive to format.\n\ [drive:] Specifies the drive to format.\n\
-FS:file-system Specifies the type of file system (e.g. FAT).\n\ -FS:file-system Specifies the type of file system (%s).\n\
-V:label Specifies volume label.\n\ -V:label Specifies volume label.\n\
-Q Performs a quick format.\n\ -Q Performs a quick format.\n\
-A:size Overrides the default allocation unit size. Default settings\n\ -A:size Overrides the default allocation unit size. Default settings\n\

View file

@ -12,11 +12,11 @@ LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
STRINGTABLE DISCARDABLE STRINGTABLE DISCARDABLE
{ {
STRING_HELP, "Utilisation : %S disque: [-FS:système de fichier] [-V:nom] [-Q] [-A:taille] [-C]\n\n\ STRING_HELP, "Utilisation : %S disque: [-FS:système de fichier] [-V:nom] [-Q] [-A:taille] [-C]\n\n\
[disque:] Indique le disque à formater.\n\ [disque:] Indique le disque à formater.\n\
-FS:système de fichier Indique le type de système de fichier (p.e. FAT).\n\ -FS:système de fichier Indique le type de système de fichier (%s).\n\
-V:nom Détermine le nom du disque.\n\ -V:nom Détermine le nom du disque.\n\
-Q Effectue un formatage rapide.\n\ -Q Effectue un formatage rapide.\n\
-A:taille Force une taille pour les unités d'allocations. Les valeurs par défaut\n\ -A:taille Force une taille pour les unités d'allocations. Les valeurs par défaut\n\
sont fortement recommandées pour une utilisation courante\n\ sont fortement recommandées pour une utilisation courante\n\
NTFS peut utiliser 512, 1024, 2048, 4096, 8192, 16K, 32K, 64K.\n\ NTFS peut utiliser 512, 1024, 2048, 4096, 8192, 16K, 32K, 64K.\n\
FAT peut utiliser 8192, 16K, 32K, 64K, 128K, 256K.\n\ FAT peut utiliser 8192, 16K, 32K, 64K, 128K, 256K.\n\

View file

@ -10,7 +10,7 @@ STRINGTABLE DISCARDABLE
{ {
STRING_HELP, "Használat: %S kötet: [-FS:állományrendszer] [-V:címke] [-Q] [-A:méret] [-C]\n\n\ STRING_HELP, "Használat: %S kötet: [-FS:állományrendszer] [-V:címke] [-Q] [-A:méret] [-C]\n\n\
[kötet:] A meghajtóbetűjelet adja meg (kettősponttal a végén).\n\ [kötet:] A meghajtóbetűjelet adja meg (kettősponttal a végén).\n\
-FS:állományrendszer Az állományrendszer típusát adja meg (pl.: FAT).\n\ -FS:állományrendszer Az állományrendszer típusát adja meg (%s).\n\
-V:címke A Kötetcímke neve.\n\ -V:címke A Kötetcímke neve.\n\
-Q Gyorsformázást hajt végre.\n\ -Q Gyorsformázást hajt végre.\n\
-A:méret Felülbírálja az alapértelmezett szektorcsoport-\n\ -A:méret Felülbírálja az alapértelmezett szektorcsoport-\n\

View file

@ -10,7 +10,7 @@ STRINGTABLE DISCARDABLE
STRING_HELP, "使用法: %S ドライブ: [-FS:ファイルシステム] [-V:ラベル] [-Q] [-A:サイズ] [-C]\n\n\ STRING_HELP, "使用法: %S ドライブ: [-FS:ファイルシステム] [-V:ラベル] [-Q] [-A:サイズ] [-C]\n\n\
[ドライブ:] フォーマットするドライブを指定します。\n\ [ドライブ:] フォーマットするドライブを指定します。\n\
-FS:ファイルシステム\n\ -FS:ファイルシステム\n\
ファイルシステムの種類を指定します (例: FAT)。\n\ ファイルシステムの種類を指定します (%s)。\n\
-V:ラベル ボリューム ラベルを指定します。\n\ -V:ラベル ボリューム ラベルを指定します。\n\
-Q クイック フォーマットを実行します。\n\ -Q クイック フォーマットを実行します。\n\
-A:サイズ 規定のアロケーション ユニット サイズを上書きします。\n\ -A:サイズ 規定のアロケーション ユニット サイズを上書きします。\n\

View file

@ -9,7 +9,7 @@ STRINGTABLE DISCARDABLE
{ {
STRING_HELP, "bruk: %S stasjon: [-FS:fil-system] [-V:merke] [-Q] [-A:størrelse] [-C]\n\n\ STRING_HELP, "bruk: %S stasjon: [-FS:fil-system] [-V:merke] [-Q] [-A:størrelse] [-C]\n\n\
[stasjon:] Spesifisere stasjon til formater.\n\ [stasjon:] Spesifisere stasjon til formater.\n\
-FS:file-system Spesifisere typen av fil system (f.eks. FAT).\n\ -FS:file-system Spesifisere typen av fil system (%s).\n\
-V:merke Spesifisere volum merke.\n\ -V:merke Spesifisere volum merke.\n\
-Q Fullføre en rask formatering.\n\ -Q Fullføre en rask formatering.\n\
-A:størrelse Dominerende standard fordeling enhet størrelse. Standard innstilling\n\ -A:størrelse Dominerende standard fordeling enhet størrelse. Standard innstilling\n\

View file

@ -69,21 +69,6 @@ static VOID PrintWin32Error( LPTSTR Message, DWORD ErrorCode )
} }
//----------------------------------------------------------------------
//
// Usage
//
// Tell the user how to use the program
//
//----------------------------------------------------------------------
static VOID Usage( LPTSTR ProgramName )
{
TCHAR szMsg[RC_STRING_MAX_SIZE];
LoadString( GetModuleHandle(NULL), STRING_HELP, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
_tprintf(szMsg, ProgramName);
}
//---------------------------------------------------------------------- //----------------------------------------------------------------------
// //
// ParseCommandLine // ParseCommandLine
@ -245,9 +230,61 @@ BOOLEAN LoadFMIFSEntryPoints()
return FALSE; return FALSE;
} }
if( !((void *) GetProcAddress( hFmifs,
"QueryAvailableFileSystemFormat" )) ) {
return FALSE;
}
return TRUE; return TRUE;
} }
//----------------------------------------------------------------------
//
// Usage
//
// Tell the user how to use the program
//
//----------------------------------------------------------------------
static VOID Usage( LPTSTR ProgramName )
{
TCHAR szMsg[RC_STRING_MAX_SIZE];
TCHAR szFormats[MAX_PATH];
#ifndef UNICODE
TCHAR szFormatA[MAX_PATH];
#endif
WCHAR szFormatW[MAX_PATH];
DWORD Index = 0;
BYTE dummy;
BOOLEAN lastestVersion;
LoadString( GetModuleHandle(NULL), STRING_HELP, (LPTSTR) szMsg,RC_STRING_MAX_SIZE);
if (!LoadFMIFSEntryPoints())
{
_tprintf(szMsg, ProgramName, "");
return;
}
szFormats[0] = 0;
while (QueryAvailableFileSystemFormat(Index++, szFormatW, &dummy, &dummy, &lastestVersion))
{
if (!lastestVersion)
continue;
if (szFormats[0])
_tcscat(szFormats, _T(", "));
#ifdef UNICODE
_tcscat(szFormats, szFormatW);
#else
if (0 != WideCharToMultiByte(CP_ACP, 0, szFormatW, -1, szFormatA, sizeof(szFormatA), NULL, NULL))
_tcscat(szFormats, szFormatA);
#endif
}
_tprintf(szMsg, ProgramName, szFormats);
}
//---------------------------------------------------------------------- //----------------------------------------------------------------------
// //
// WMain // WMain