Следующая статья: Проблема медленного доступа к таблице.
Как отформатировать диск / дискету под Win32?
Используйте ShFormatDrive:
function SHFormatDrive(hWnd: HWND; Drive: Word; fmtID: Word; Options: Word)
: Longint; stdcall; external'Shell32.dll' name'SHFormatDrive';
const
SHFMT_DRV_A=0;
SHFMT_DRV_B=1;
SHFMT_ID_DEFAULT=$FFFF;
SHFMT_OPT_QUICKFORMAT=0;
SHFMT_OPT_FULLFORMAT=1;
SHFMT_OPT_SYSONLY=2;
SHFMT_ERROR=-1;
SHFMT_CANCEL=-2;
SHFMT_NOFORMAT=-3;
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;