Форматирование диска в Win32

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';

...

implementation

...

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;

Добавить комментарий