用 Getsysteminfo , globalmemorystatus ,getdiskfreespace 这三个函数。 Public Declare Sub GetSystemInfo Lib "kernel32" Alias "GetSystemInfo" (lpSystemInfo As SYSTEM_INFO) Public Declare Sub GlobalMemoryStatus Lib "kernel32" Alias "GlobalMemoryStatus" (lpBuffer As MEMORYSTATUS) Public 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 //******** SYSTEM_INFO是个结构体 Public Type SYSTEM_INFO dwOemID As Long dwPageSize As Long lpMinimumApplicationAddress As Long lpMaximumApplicationAddress As Long dwActiveProcessorMask As Long dwNumberOrfProcessors As Long ******* dwProcessorType As Long dwAllocationGranularity As Long dwReserved As Long End Type 当中,dwProcessorType是用来判断CPU类型的。 常见的有 PROCESSOR_386 intel 80386 PROCESSOR_486 intel 80486 CPU PROCESSOR_INTEL _PENTIUM intel pentium CPU //******** Public Type MEMORYSTATUS dwLength As Long dwMemoryLoad As Long dwTotalPhys As Long dwAvailPhys As Long dwTotalPageFile As Long dwAvailPageFile As Long dwTotalVirtual As Long dwAvailVirtual As Long End Type 当中dwtotalphys 表示实际物理内存总量 dwAvailphys 表示可用内存 dwtotalVirtual 虚拟内存总量 dwAvailvirtual 可用虚拟内存 //*************** 在Getdiskfreespace函数中 lpRootpathname 指定要返回信息的磁盘根目录。 lpSectorsPerCluster 每个簇中的扇区数 lpBytesPerSetor 每0个扇区中的字节数 lpNumberoffreeClusters 磁盘上可用空间的总簇数 lpTotalNumberoffClusters 磁盘上的总簇数。 故总量可用 TotalNum=总簇数*每簇扇区数*每扇区字节数。
Public Declare Sub GetSystemInfo Lib "kernel32" Alias "GetSystemInfo" (lpSystemInfo As SYSTEM_INFO)
Public Declare Sub GlobalMemoryStatus Lib "kernel32" Alias "GlobalMemoryStatus" (lpBuffer As MEMORYSTATUS)
Public 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
//********
SYSTEM_INFO是个结构体
Public Type SYSTEM_INFO
dwOemID As Long
dwPageSize As Long
lpMinimumApplicationAddress As Long
lpMaximumApplicationAddress As Long
dwActiveProcessorMask As Long
dwNumberOrfProcessors As Long
******* dwProcessorType As Long
dwAllocationGranularity As Long
dwReserved As Long
End Type
当中,dwProcessorType是用来判断CPU类型的。
常见的有
PROCESSOR_386 intel 80386
PROCESSOR_486 intel 80486 CPU
PROCESSOR_INTEL _PENTIUM intel pentium CPU
//********
Public Type MEMORYSTATUS
dwLength As Long
dwMemoryLoad As Long
dwTotalPhys As Long
dwAvailPhys As Long
dwTotalPageFile As Long
dwAvailPageFile As Long
dwTotalVirtual As Long
dwAvailVirtual As Long
End Type
当中dwtotalphys 表示实际物理内存总量
dwAvailphys 表示可用内存
dwtotalVirtual 虚拟内存总量
dwAvailvirtual 可用虚拟内存
//***************
在Getdiskfreespace函数中
lpRootpathname 指定要返回信息的磁盘根目录。
lpSectorsPerCluster 每个簇中的扇区数
lpBytesPerSetor 每0个扇区中的字节数
lpNumberoffreeClusters 磁盘上可用空间的总簇数
lpTotalNumberoffClusters 磁盘上的总簇数。
故总量可用
TotalNum=总簇数*每簇扇区数*每扇区字节数。