cs_grandvizir
Messages postés1106Date d'inscriptionsamedi 8 novembre 2003StatutMembreDernière intervention 3 septembre 2006
-
19 déc. 2004 à 17:45
adp138
Messages postés4Date d'inscriptionlundi 20 décembre 2004StatutMembreDernière intervention16 septembre 2006
-
6 mars 2007 à 11:49
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
adp138
Messages postés4Date d'inscriptionlundi 20 décembre 2004StatutMembreDernière intervention16 septembre 2006 6 mars 2007 à 11:49
function DiskIsPresent(t:integer):boolean;
const
Disks:array[1..4] of PChar=('A:\','B:\','C:\','D:\');
var
ErrorMode: Word;
begin
result:=false;
// teste la présence de lecteur de discket
if GetDriveType(disks[t])=2 then
begin
// Désactive la gestion des erreurs
ErrorMode:= SetErrorMode(SEM_FAILCRITICALERRORS);
try
// DiskSize(0)= unité en cours, 1= A, 2= B
Result:= DiskSize(t)<> -1;
finally
// Réactive la gestion des erreurs
SetErrorMode(ErrorMode);
end;
end;
end;
cs_grandvizir
Messages postés1106Date d'inscriptionsamedi 8 novembre 2003StatutMembreDernière intervention 3 septembre 200622 19 déc. 2004 à 17:45
L'exemple manque cruellement d'explications. Par exemple, il faut spécifier les unités à ajouter: Windows et SysUtils. Ce code source est du vrai débutanisme. Initié ? Pff... Voici donc un petit code qui se tient en un simple fichier DPR:
program Project1;
uses Windows, SysUtils, Dialogs;
{$R-}
function DiskIsPresent:boolean;
var ErrorMode: Word;
begin
ErrorMode:=SetErrorMode(SEM_FAILCRITICALERRORS);
try
DiskIsPresent:= DiskSize(1)<>-1;
finally
SetErrorMode(ErrorMode);
end;
end;
begin
ShowMessage(IntToStr(Ord(DiskIsPresent)));
end.
6 mars 2007 à 11:49
const
Disks:array[1..4] of PChar=('A:\','B:\','C:\','D:\');
var
ErrorMode: Word;
begin
result:=false;
// teste la présence de lecteur de discket
if GetDriveType(disks[t])=2 then
begin
// Désactive la gestion des erreurs
ErrorMode:= SetErrorMode(SEM_FAILCRITICALERRORS);
try
// DiskSize(0)= unité en cours, 1= A, 2= B
Result:= DiskSize(t)<> -1;
finally
// Réactive la gestion des erreurs
SetErrorMode(ErrorMode);
end;
end;
end;
19 déc. 2004 à 17:45
program Project1;
uses Windows, SysUtils, Dialogs;
{$R-}
function DiskIsPresent:boolean;
var ErrorMode: Word;
begin
ErrorMode:=SetErrorMode(SEM_FAILCRITICALERRORS);
try
DiskIsPresent:= DiskSize(1)<>-1;
finally
SetErrorMode(ErrorMode);
end;
end;
begin
ShowMessage(IntToStr(Ord(DiskIsPresent)));
end.
Pour ce test: 0=false et 1=true.