GetVersionEx by using kernel32.dll : Native Windows Function : Windows C# Examples


C# Examples » Windows » Native Windows Function »

 

GetVersionEx by using kernel32.dll









    
using  System;
using  System.Runtime.InteropServices;

[StructLayout(LayoutKind.Sequential)]
public  class  OSVersionInfo
{
        public  int  dwOSVersionInfoSize;
        public  int  dwMajorVersion;
        public  int  dwMinorVersion;
        public  int  dwBuildNumber;
        public  int  dwPlatformId;
        [MarshalAs(UnmanagedType.ByValTStr,  SizeConst  =  128)]
        public  String  szCSDVersion;
}


class  MainClass
{
        [DllImport("kernel32.dll")]
        public  static  extern  bool  GetVersionEx([In,  Out]  OSVersionInfo  osvi);

        static  void  Main(string[]  args)
        {
                OSVersionInfo  osvi  =  new  OSVersionInfo();
                osvi.dwOSVersionInfoSize  =  Marshal.SizeOf(osvi);

                GetVersionEx(osvi);

                Console.WriteLine("Class  size:  "  +  osvi.dwOSVersionInfoSize);
                Console.WriteLine("Major  Version:  "  +  osvi.dwMajorVersion);
                Console.WriteLine("Minor  Version:  "  +  osvi.dwMinorVersion);
                Console.WriteLine("Build  Number:  "  +  osvi.dwBuildNumber);
                Console.WriteLine("Platform  Id:  "  +  osvi.dwPlatformId);
                Console.WriteLine("CSD  Version:  "  +  osvi.szCSDVersion);
                Console.WriteLine("Platform:  "  +  Environment.OSVersion.Platform);
                Console.WriteLine("Version:  "  +  Environment.OSVersion.Version);

        }
}
    
   
  
   



Output

Class size: 148
Major Version: 5
Minor Version: 1
Build Number: 2600
Platform Id: 2
CSD Version: Service Pack 2
Platform: Win32NT
Version: 5.1.2600.131072


HTML code for linking to this page:

Follow Navioo On Twitter

C# Examples

 Navioo Windows
» Native Windows Function