Procedure Name | Type | Description |
(Declarations) | Declarations | Declarations and private variables for the CMemoryStatus class. |
MemoryScale | Property | Get the currently specified scale to adjust memory units. |
MemoryUnits | Property | Get the string representing the current memory units. |
Class_Initialize | Initialize | Initialize the object to get the memory values. |
AdjustScale | Private | Adjust a value in bytes to the specified scale. |
LargeIntToCurrency | Private | Convert 8 bytes from the large integer to a currency value. |
AvailablePageFile | Method | Get the available page file size. |
AvailablePhysical | Method | Get the available physical memory. |
AvailableVirtual | Method | Get the available virtual memory. |
MemoryLoad | Method | Get the memory utilization (value between 0 and 100). |
TotalPageFile | Method | Get the page file size. |
TotalPhysical | Method | Get the total physical memory. |
TotalVirtual | Method | Get the total virtual memory. |
' Example of CMemoryStatus ' ' To use this example, create a new module and paste this code into it. ' Then run the procedure by putting the cursor in the procedure and pressing: ' F5 to run it, or ' F8 to step through it line-by-line (see the Debug menu for more options) Private Sub Example_CMemoryStatus() ' Comments: Example of using the CMemoryStatus class to get memory information, in VB6 and VBA with 32 and 64 bit Windows API calls. ' Run this procedure and see the information in the Immediate Window. Dim clsMemoryStatus As CMemoryStatus Dim intLoop As Integer Dim strUnits As String Set clsMemoryStatus = New CMemoryStatus With clsMemoryStatus ' Show memory status information Debug.Print "Memory Load = " & .MemoryLoad & "%" ' Loop three times to see how units can be adjusted For intLoop = 1 To 4 ' Show memory amounts in bytes, KB, MB or GB Select Case intLoop Case 1 .MemoryScale = eMemoryBytes Case 2 .MemoryScale = eMemoryKB Case 3 .MemoryScale = eMemoryMB Case 4 .MemoryScale = eMemoryGB End Select strUnits = .MemoryUnits() Debug.Print Debug.Print "Total Physical = " & .TotalPhysical & strUnits Debug.Print "Available Physical = " & .AvailablePhysical & strUnits Debug.Print "Total Page File = " & .TotalPageFile & strUnits Debug.Print "Available Page File = " & .AvailablePageFile & strUnits Debug.Print "Total Virtual = " & .TotalVirtual & strUnits Debug.Print "Available Virtual = " & .AvailableVirtual & strUnits Next intLoop End With Set clsMemoryStatus = Nothing End Sub
The source code in Total Visual Sourcebook includes modules and classes for Microsoft Access, Visual Basic 6 (VB6), and Visual Basic for Applications (VBA) developers. Easily add this professionally written, tested, and documented royalty-free code into your applications to simplify your application development efforts.
Total Visual SourceBook is written for the needs of a developer using a source code library covering the many challenges you face. Countless developers over the years have told us they learned some or much of their development skills and tricks from our code. You can too!
Supports Access/Office 2016, 2013, 2010 and 2007, and Visual Basic 6.0!
"The code is exactly how I would like to write code and the algorithms used are very efficient and well-documented."
Van T. Dinh, Microsoft MVP