mirror of
https://github.com/reactos/reactos.git
synced 2025-05-28 05:28:14 +00:00
[FSUTIL]
Print nicer error messages svn path=/trunk/; revision=75778
This commit is contained in:
parent
3ffb3ab04a
commit
78fa10c45b
4 changed files with 28 additions and 5 deletions
|
@ -72,7 +72,7 @@ HANDLE OpenVolume(const TCHAR * Volume,
|
|||
NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
|
||||
if (hVolume == INVALID_HANDLE_VALUE)
|
||||
{
|
||||
_ftprintf(stderr, _T("Error: %d\n"), GetLastError());
|
||||
PrintErrorMessage(GetLastError());
|
||||
return INVALID_HANDLE_VALUE;
|
||||
}
|
||||
|
||||
|
@ -99,3 +99,24 @@ void PrintDefaultUsage(const TCHAR * Command,
|
|||
_ftprintf(stderr, _T("%s\t%s\n"), HandlersList[i].Command, HandlersList[i].Desc);
|
||||
}
|
||||
}
|
||||
|
||||
int PrintErrorMessage(DWORD Error)
|
||||
{
|
||||
TCHAR * String;
|
||||
|
||||
/* Try to get textual error */
|
||||
if (FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
|
||||
NULL, Error, 0, (TCHAR *)&String, 0, NULL) != 0)
|
||||
{
|
||||
/* And print it */
|
||||
_ftprintf(stderr, _T("Error: %s\n"), String);
|
||||
LocalFree(String);
|
||||
}
|
||||
else
|
||||
{
|
||||
/* Otherwise, just print the error number */
|
||||
_ftprintf(stderr, _T("Error: %d\n"), Error);
|
||||
}
|
||||
|
||||
return Error;
|
||||
}
|
||||
|
|
|
@ -44,7 +44,7 @@ QueryMain(int argc, const TCHAR *argv[])
|
|||
if (DeviceIoControl(Volume, FSCTL_IS_VOLUME_DIRTY, NULL, 0, &VolumeStatus,
|
||||
sizeof(ULONG), &BytesRead, NULL) == FALSE)
|
||||
{
|
||||
_ftprintf(stderr, _T("Error: %d\n"), GetLastError());
|
||||
PrintErrorMessage(GetLastError());
|
||||
CloseHandle(Volume);
|
||||
return 1;
|
||||
}
|
||||
|
@ -81,7 +81,7 @@ SetMain(int argc, const TCHAR *argv[])
|
|||
/* And set the dirty bit */
|
||||
if (DeviceIoControl(Volume, FSCTL_MARK_VOLUME_DIRTY, NULL, 0, NULL, 0, &BytesRead, NULL) == FALSE)
|
||||
{
|
||||
_ftprintf(stderr, _T("Error: %d\n"), GetLastError());
|
||||
PrintErrorMessage(GetLastError());
|
||||
CloseHandle(Volume);
|
||||
return 1;
|
||||
}
|
||||
|
|
|
@ -30,7 +30,7 @@ DrivesMain(int argc, const TCHAR *argv[])
|
|||
Drives = GetLogicalDrives();
|
||||
if (Drives == 0)
|
||||
{
|
||||
_ftprintf(stderr, _T("Error: %d\n"), GetLastError());
|
||||
PrintErrorMessage(GetLastError());
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@ -119,7 +119,7 @@ VolumeInfoMain(int argc, const TCHAR *argv[])
|
|||
if (!GetVolumeInformation(argv[1], VolumeName, MAX_PATH + 1, &Serial,
|
||||
&MaxComponentLen, &Flags, FileSystem, MAX_PATH + 1))
|
||||
{
|
||||
_ftprintf(stderr, _T("Error: %d\n"), GetLastError());
|
||||
PrintErrorMessage(GetLastError());
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
|
|
@ -26,4 +26,6 @@ void PrintDefaultUsage(const TCHAR * Command,
|
|||
HandlerItem * HandlersList,
|
||||
int HandlerListCount);
|
||||
|
||||
int PrintErrorMessage(DWORD Error);
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in a new issue