Larry Tubbs (ltubbs@sprintmail.com)

' place in the declaration section of a 

bas

file (global module) Private Declare Function GetVolumeInformation Lib "kernel32" _

alias

"GetVolumeInformationA" _ (ByVal lpRootPathName As String, _ ByVal lpVolumeNameBuffer As String, _ ByVal nVolumeNameSize As Long, _ lpVolumeSerialNumber As Long, _ lpMaximumComponentLength As Long, _ lpfileSystemFlags As Long, _ ByVal lpFileSystemNameBuffer As String, _ ByVal nFileSystemNameSize As Long) As Long Private Declare Function GetDiskFreeSpace _ Lib "kernel32" _

alias

"GetDiskFreeSpaceA" _ (ByVal lpRootPathName As String, _ lpSectorsPerCluster As Long, _ lpBytesPerSector As Long, _ lpNumberOfFreeClusters As Long, _ lpTotalNumberOfClusters As Long) As Long ' new public function, place in a

bas

file as well (global module) Public Function GetDriveInfo(filePath As String) As String Dim lpVolumeNameBuffer As String Dim nVolumeNameSize As String Dim lpVolumeSerialNumber As Long Dim lpMaximumComponentLength As Long Dim lpfileSystemFlags As Long Dim lpFileSystemNameBuffer As String Dim nFileSystemNameSize As Long Dim lpSectorsPerCluster As Long Dim lpBytesPerSector As Long Dim lpNumberOfFreeClusters As Long Dim lpTotalNumberOfClusters As Long Dim rtval As Long lpVolumeNameBuffer = Space(255) nVolumeNameSize = 256 lpFileSystemNameBuffer = Space(255) nFileSystemNameSize = 256 rtval = GetVolumeInformation(filePath, _ lpVolumeNameBuffer, _ nVolumeNameSize, _ lpVolumeSerialNumber, _ lpMaximumComponentLength, _ lpfileSystemFlags, _ lpFileSystemNameBuffer, _ nFileSystemNameSize) rtval = GetDiskFreeSpace(filePath, _ lpSectorsPerCluster, _ lpBytesPerSector, _ lpNumberOfFreeClusters, _ lpTotalNumberOfClusters) GetDriveInfo = "Volume Serial Number: " & lpVolumeSerialNumber & Chr(13) & Chr(10) & _ "Volume Size In Bytes: " & lpTotalNumberOfClusters * lpSectorsPerCluster * lpBytesPerSector & " bytes" & Chr(13) & Chr(10) & _ "Volume Free Space In Bytes: " & lpNumberOfFreeClusters * lpSectorsPerCluster * lpBytesPerSector & " bytes" End Function
Return