Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Serial Number - Motherboard/Hard Disk
Message
De
22/05/2002 17:23:31
 
 
À
22/05/2002 15:42:14
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Divers
Thread ID:
00660123
Message ID:
00660195
Vues:
22
The following provides volume info including volume serial number.
Function api_volumeinfo(lpRoot)
 Local lnRet, lcString, lpVolName, ;
  nVolSize, lpVolNumber, ;
  lpMaxComp, lpFlags, ;
  lpFSName, nFSSize

 If EMPTY(lpRoot)
  lpRoot = "c:\"
 Endif
 lpVolName = SPACE(256)
 nVolSize = 256
 lpVolNumber = 0
 lpMaxComp = 256
 lpFlags = 0
 lpFSName = SPACE(256)
 nFSSize = 256
 Declare INTEGER GetVolumeInformation ;
  IN Win32API AS GetVolInfo ;
  STRING  @lpRoot, ;
  STRING  @lpVolName, ;
  INTEGER nVolSize, ;
  INTEGER @lpVolNumber, ;
  INTEGER @lpMaxComp, ;
  INTEGER @lpFlags, ;
  STRING  @lpFSName, ;
  INTEGER nFSSize
 lnRet=GetVolInfo(@lpRoot, @lpVolName, ;
  nVolSize, @lpVolNumber, ;
  @lpMaxComp, @lpFlags, ;
  @lpFSName, nFSSize)
 If lnRet > 0
  lcString = "Drive name: " + ;
   ALLT(lpRoot)+CHR(13)+chr(10)+ ;
   "Vol name: " + ;
   LEFT(ALLT(lpVolName),LEN(ALLT(lpVolName))-1)+CHR(13)+chr(10)+ ;
   "Max #/chars in vol name: " + ;
   ALLT(STR(nVolSize))+CHR(13)+chr(10)+ ;
   "Vol Serial #: " + ;
   ALLT(STR(lpVolNumber))+CHR(13)+chr(10)+ ;
   "Max #/chars in dir/file names: " + ;
   ALLT(STR(lpMaxComp))+CHR(13)+chr(10)+ ;
   "File Sys Flags: " + ;
   ALLT(STR(lpFlags))+CHR(13)+chr(10)+ ;
   "File Sys type: " + ;
   LEFT(ALLT(lpFSName),LEN(ALLT(lpFSName))-1)+CHR(13)+chr(10)+ ;
   "File Sys Name Size: " + ;
   ALLT(STR(nFSSize))
 Else
  lcString = "No information"
 Endif
  GetVolInfo = .null.
  release GetVolInfo
 Return lcString
HTH

Elmer
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform