GetSystemInfo (coredll)
Last changed: -212.235.34.77

.
Summary
TODO - a short description

C# Signature:

[DllImport("coredll", SetLastError = true)]
    public static extern void GetSystemInfo(out SYSTEM_INFO pSi);

VB Signature:

Declare Function GetSystemInfo Lib "coredll.dll" (TODO) As TODO

User-Defined Types:

SYSTEM_INFO on MSDN

[StructLayout(LayoutKind.Sequential)]
public struct SYSTEM_INFO
{
     [MarshalAs(UnmanagedType.U4)]
     public int dwOemId;
     [MarshalAs(UnmanagedType.U4)]
     public int dwPageSize;
     public uint lpMinimumApplicationAddress;
     public uint lpMaximumApplicationAddress;
     [MarshalAs(UnmanagedType.U4)]
     public int dwActiveProcessorMask;
     [MarshalAs(UnmanagedType.U4)]
     public int dwNumberOfProcessors;
     [MarshalAs(UnmanagedType.U4)]
     public int dwProcessorType;
     [MarshalAs(UnmanagedType.U4)]
     public int dwAllocationGranularity;
     [MarshalAs(UnmanagedType.U2)]
     public short dwProcessorLevel;
     [MarshalAs(UnmanagedType.U2)]
     public short dwProcessorRevision;
}

Alternative Managed API:

Do you know one? Please contribute it!

Notes:

Tips & Tricks:

Please add some!

Sample Code:

using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
namespace Test
{
    [StructLayout(LayoutKind.Sequential)]
    public struct SYSTEM_INFO
    {
        [MarshalAs(UnmanagedType.U4)]
        public int dwOemId;
        [MarshalAs(UnmanagedType.U4)]
        public int dwPageSize;
        public uint lpMinimumApplicationAddress;
        public uint lpMaximumApplicationAddress;
        [MarshalAs(UnmanagedType.U4)]
        public int dwActiveProcessorMask;
        [MarshalAs(UnmanagedType.U4)]
        public int dwNumberOfProcessors;
        [MarshalAs(UnmanagedType.U4)]
        public int dwProcessorType;
        [MarshalAs(UnmanagedType.U4)]
        public int dwAllocationGranularity;
        [MarshalAs(UnmanagedType.U2)]
        public short dwProcessorLevel;
        [MarshalAs(UnmanagedType.U2)]
        public short dwProcessorRevision;
    }
    class Program
    {
       [DllImport("coredll", SetLastError = true)]
       public static extern void GetSystemInfo(out SYSTEM_INFO pSi);
       static void Main(string[] args)
       {
           SYSTEM_INFO si;
           GetSystemInfo(out si);
       }
    }
}

Documentation