Código
{$R *.dfm}
Function TemDiscoNoDrive(const drive : char): boolean;
var
DriveNumero : byte;
EMode : word;
begin
result := false;
DriveNumero := ord(Drive);
if DriveNumero >= ord('a') then
dec(DriveNumero,$20);
EMode := SetErrorMode(SEM_FAILCRITICALERRORS);
try
if DiskSize(DriveNumero-$40) <> -1 then
Result := true else messagebeep(0);
finally
SetErrorMode(EMode);
end;
end;
{ No meu programa quando o usário inicia um backup clicando o botao "BitBtn5" então ele veriifica se tem disquete no drive forçando maior atenção, porque usuário é foda ... hehehe.}
procedure TFrmPrincipal.BitBtn5Click(Sender: TObject);
begin
if TemDiscoNoDrive('a') then
Begin
Application.CreateForm(TFormBackup,FormBackup);
FormBackup.ShowModal;
end
else
MessageDlg('Atenção!'+#13'Não foi encontrado nenhum diskete no seu Drive!'+#13'Por favor insira um diskete no seu Drive para Iniciar o backup!',mtError,[mbOK],0);
end;
procedure TFrmPrincipal.Backup1Click(Sender: TObject);
begin
if TemDiscoNoDrive('a') then
Begin
Application.CreateForm(TFormBackup,FormBackup);
FormBackup.ShowModal;
end
else
MessageDlg('Atenção!'+#13'Não foi encontrado nenhum diskete no seu Drive!'+#13'Por favor insira um diskete no seu Drive para Iniciar o backup!',mtError,[mbOK],0);
end;
{Bom proveito, espero ajudar.
Quaisquer maiores dúvidas.
Att. Lucasfss }
Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009