GetSystemInfo (Kernel32)



Usage

    Private Structure SYSTEM_INFO
        Public ProcessorArchitecture As Short
        Public Reserved As Short
        Public PageSize As Integer
        Public MinimumApplicationAddress As IntPtr
        Public MaximumApplicationAddress As IntPtr
        Public ActiveProcessorMask As IntPtr
        Public NumberOfProcessors As Integer
        Public ProcessorType As Integer
        Public AllocationGranularity As Integer
        Public ProcessorLevel As Short
        Public ProcessorRevision As UShort '?
    End Structure

    Private Const PROCESSOR_ARCHITECTURE_INTEL As Long = 0
    Private Const PROCESSOR_ARCHITECTURE_ARM As Long = 5
    Private Const PROCESSOR_ARCHITECTURE_IA64 As Long = 6
    Private Const PROCESSOR_ARCHITECTURE_AMD64 As Long = 9
    Private Const PROCESSOR_ARCHITECTURE_ARM64 As Long = 12
    Private Const PROCESSOR_ARCHITECTURE_UNKNOWN As Long = &HFFFF&

    Private Const PROCESSOR_LEVEL_80386 As Long = 3
    Private Const PROCESSOR_LEVEL_80486 As Long = 4
    Private Const PROCESSOR_LEVEL_PENTIUM As Long = 5
    Private Const PROCESSOR_LEVEL_PENTIUMII As Long = 6

    Private Declare Sub GetSystemInfo Lib "kernel32" ( ByRef SystemInfo As SYSTEM_INFO)

        Dim SI As SYSTEM_INFO
        Call GetSystemInfo(SI)