public static uint FormatDrive(IntPtr Handle, string DriveLetter) {
DriveInfo drive = new DriveInfo(DriveLetter);
byte[] bytes = Encoding.ASCII.GetBytes(drive.Name.ToCharArray());
uint driveNumber = Convert.ToUInt32(bytes[0] - Encoding.ASCII.GetBytes(new[] { 'A' })[0]);
uint Result = SHFormatDrive(Handle, driveNumber, SHFormatFlags.SHFMT_ID_DEFAULT,
SHFormatOptions.SHFMT_OPT_FULL);
return Result;
}