>>CLEAR >>? >> >>PUBLIC TARRAY >>DECLARE TARRAY(10) >> >>TARRAY = "" >> >>=GETVOLINFO( "c:\", @TARRAY ) >> >>FOR I = 1 TO ALEN( TARRAY ) >> ? TARRAY(I) >>NEXT >> >> >> >>Function GetVolInfo >> >>Lparameters lcRoot, taInfo && Root of drive ie: "c:\", InfoArray passed by ref >> >>Declare SHORT GetVolumeInformation IN Win32API; >> STRING @lpRootPathName, STRING @lpVolumeNameBuffer,; >> INTEGER nVolumeNameSize, integer @lpVolumeSerialNumber,; >> INTEGER @lpMaximumComponentLength, INTEGER @lpFileSystemFlags,; >> STRING @lpFileSystemNameBuffer, INTEGER nFileSystemNameSize >> >>Store 0 TO lncomplen, lnsysflags, lnserialno >>Store SPACE(260) TO lcvolname, lcsysname >>Store LEN(lcvolname) TO lnvolsize, lnnamesize >> >>If (GetVolumeInformation(@lcRoot, @lcvolname,; >> lnvolsize, @lnserialno, @lncomplen, @lnsysflags,; >> @lcsysname, lnnamesize) # 0) >> >> Dimension taInfo[3] >> >> taInfo[1] = substr(lcvolname, 1, at(chr(0),lcvolname)-1) && Volume name >> taInfo[2] = substr(lcsysname, 1, at(chr(0),lcsysname)-1) && Par.type >> taInfo[3] = trans(right(trans(iif(lnSerialNo < 0, 0x7FFFFFFF-abs(lnSerialNo)+0x7FFFFFFF, lnSerialNo),'@0'),8) ) && Serial >> >>Else >> >> taInfo = "" >> >>Endif >> >>Return >>