The windows version information : Native Windows Function « Windows « C# / CSharp Tutorial






// Code from 
// A Programmer's Introduction to C# 2.0, Third Edition
// copyright 2000 Eric Gunnerson

using System;
using System.Runtime.InteropServices;

unsafe struct OSVERSIONINFO
{
     public uint dwOSVersionInfoSize;  
     public uint dwMajorVersion;  
     public uint dwMinorVersion;  
     public uint dwBuildNumber;
     public uint dwPlatformId; 
     public fixed char szCSDVersion[128];
}

class Program{
     [DllImport("Kernel32.dll", CharSet = CharSet.Unicode)]
     static extern bool GetVersionEx(ref OSVERSIONINFO lpVersionInfo);

     unsafe static void Main(string[] args)
     {
          OSVERSIONINFO versionInfo = new OSVERSIONINFO();
          versionInfo.dwOSVersionInfoSize = (uint)sizeof(OSVERSIONINFO);
          bool res = GetVersionEx(ref versionInfo);
          Console.WriteLine(Marshal.PtrToStringUni(new IntPtr(versionInfo.szCSDVersion)));
     }
}
S








29.10.Native Windows Function
29.10.1.Calling Native DLL Functions
29.10.2.Calling a Function with a Structure Parameter
29.10.3.Enumerate Display Monitors
29.10.4.Get Workstation information
29.10.5.Get Computer name (char * parameter)
29.10.6.Get free disk space
29.10.7.Use native windows function to read file
29.10.8.The windows version information
29.10.9.Get current Active Window
29.10.10.Writing INI file: Write Private Profile String
29.10.11.Reading INI file: Get Private Profile String
29.10.12.GetVersionEx by using kernel32.dll
29.10.13.Get computer name (StringBuilder parameter)
29.10.14.Lock work station
29.10.15.Get Monitor Information