C
CSharp
C++
Java
Visual Basic
HTML - CSS
Android
Asp
Asp.Net
Php
Python
JavaScript
SQL
XML
Assembly
ActiveX
API
Code Snippets
Database
Files Directories Drives
Forms
Graphics Games
Multimedia
Strings
Windows and Controls
More...
Visual Basic > Files Directories Drives sample source codes
Visual Basic Code > Getting disk serial and freespace
Getting disk serial and freespace ' 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
Privacy Policy
|
Contact
|
Advertising
|
Link to Us
|
Directory