Question:
How can I format a drive under Win32?
Answer:
You can use the ShellAPI funciton ShFormatDrive().
Example:
const SHFMT_DRV_A = 0;
const SHFMT_DRV_B = 1;
const SHFMT_ID_DEFAULT = $FFFF;
const SHFMT_OPT_QUICKFORMAT = 0;
const SHFMT_OPT_FULLFORMAT = 1;
const SHFMT_OPT_SYSONLY = 2;
const SHFMT_ERROR = -1;
const SHFMT_CANCEL = -2;
const SHFMT_NOFORMAT = -3;
function SHFormatDrive(hWnd : HWND;
 Drive : Word;
 fmtID : Word;
 Options : Word) : Longint
 stdcall; external 'Shell32.dll' name 'SHFormatDrive';
procedure TForm1.Button1Click(Sender: TObject);
var
 FmtRes : longint;
begin
 try
 FmtRes:= ShFormatDrive(Handle,
 SHFMT_DRV_A,
 SHFMT_ID_DEFAULT,
 SHFMT_OPT_QUICKFORMAT);
 case FmtRes of
 SHFMT_ERROR : ShowMessage('Error formatting the drive');
 SHFMT_CANCEL : 
 ShowMessage('User canceled formatting the drive');
 SHFMT_NOFORMAT : ShowMessage('No Format')
 else
 ShowMessage('Disk has been formatted');
 end;
 except
 end;
end;