Fórum Como formatar um disquete #263462

27/12/2004

0

como faço para formatar um disquete dentro do meu programa?


Luiz_aquino

Luiz_aquino

Responder

Posts

27/12/2004

Reginaldo174

Coloque o código abaixo imediatamente abaixo da palavra implementation:
const
SHFMT_ID_DEFAULT = $FFFF;
{ Opções de formatação }
SHFMT_OPT_QUICKFORMAT = $0000; { Formatação rápida }
SHFMT_OPT_FULL = $0001; { Formatação completa }
SHFMT_OPT_SYSONLY = $0002; { Copia sistema }
{ Códigos de errros }
SHFMT_ERROR = $FFFFFFFF; { Ocorreu erro }
SHFMT_CANCEL = $FFFFFFFE; { Foi cancelado }
SHFMT_NOFORMAT = $FFFFFFFD; { Não formatou }
function SHFormatDrive(Handle: HWND; Drive, ID, Options: Word):LongInt;
stdcall; external ´shell32.dll´ name ´SHFormatDrive´
{ Coloque um botão no form e altere o evento OnClick dele conforme
abaixo: }
procedure TForm1.Button3Click(Sender: TObject);
var
Erro: DWord;
Msg: string;
begin
Erro := SHFormatDrive(Handle, 0, SHFMT_ID_DEFAULT,
SHFMT_OPT_QUICKFORMAT);
case Erro of
SHFMT_ERROR: Msg := ´Ocorreu um erro.´;
SHFMT_CANCEL: Msg := ´A formatação foi cancelada.´;
SHFMT_NOFORMAT: Msg := ´Não foi possível formatar.´;
else
Msg := ´Disco formatado com sucesso.´;
end;
ShowMessage(Msg);
end;
Observações: Para formatação completa troque SHFMT_OPT_QUICKFORMAT por
SHFMT_OPT_FULL. O segundo parâmetro (zero no exemplo) indica a unidade, sendo
que A é 0 (zero), B é 1, etc.


Responder

Gostei + 0

27/12/2004

Renato_sp

Amigo, verificando os meus arquivos achei uma function que ja utilizei uma vez em um sistema que fiz, e acho que vai te ajudar...

function SHFormatDrive(Handle: HWND; Drive, ID, Options: Word): LongInt; stdcall; external ´shell32.dll´ name ´SHFormatDrive´


procedure TForm1.Button1Click(Sender: TObject);
var
   retCode: LongInt;
begin
   retCode:= SHFormatDrive(Handle, 0, $FFFF, $0000 );
   if retCode < 0 then
       ShowMessage(´Diskette não Formatado´);
end;


Espero que te ajude...
Renato / SP


Responder

Gostei + 0

27/12/2004

Luiz_aquino

crieri um arquivo de lote para formatar e executei esse arquivo, tbm da ou teria algum problema?

valeu!!!


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar