I. Obtenir le numéro de série d'un disque▲
Pour l'exemple sur une fiche Form1, poser un bouton Button1 et 3 labels Label1, Label2 et Label3. Puis sur l'événement OnClick de Button1 insérer le code ci-dessous. C'est la fonction de l'API Windows GetVolumeInformation qui va nous fournir ces informations. Le numéro de série du volume est retourné dans une variable de type DWORD dont on passe l'adresse au 4e paramètre de la fonction. Dans l'exemple, il est affiché sur Label1 en hexadécimal. Cette fonction peut renvoyer aussi le système de fichier du volume, affiché par Label2 dans l'exemple et aussi le nom du volume sur Label3 dans l'exemple. Il suffit de lui fournir l'adresse et la taille des buffers où elle doit écrire ces informations.
void
__fastcall TForm1::
Button1Click(TObject *
Sender)
{
DWORD NumSerie;
char
NomVol[12
];
char
SysFile[16
];
GetVolumeInformation("C:/"
, NomVol, 12
, &
NumSerie, NULL
, NULL
, SysFile, 16
);
Label1->
Caption =
IntToHex((int
)NumSerie, 8
);
Label2->
Caption =
SysFile;
Label3->
Caption =
NomVol;
}