GetWindowsDirectory (kernel32)
Last changed: -91.235.58.128

.
Summary

C# Signature:

[DllImport("kernel32.dll", SetLastError=true, CharSet=CharSet.Auto)]
static extern uint GetWindowsDirectory(StringBuilder lpBuffer,
   uint uSize);

VB Signature

Declare Function GetWindowsDirectory Lib "kernel32" Alias "GetWindowsDirectoryA" _
   (ByVal Buffer As String, ByVal Size As Integer) As Integer

User-Defined Types:

None.

Notes:

None.

Tips & Tricks:

Please add some!

Here are two ways to get the Windows path

   Private Sub test()
      Dim sSystemPath As String = System.Environment.GetFolderPath(Environment.SpecialFolder.System)
      MessageBox.Show(sSystemPath.Substring(0, sSystemPath.LastIndexOf("\")))
      MessageBox.Show(System.Environment.GetEnvironmentVariable("windir"))
   End Sub

VB Sample Code:

   As SDim WinDir tring = Space(255)
   Dim Res As Integer = GetWindowsDirectory(WinDir, WinDir.Length)
   WinDir = WinDir.Substring(0, Res)

C# Sample Code:

   const int MaxPathLength = 255;
   StringBuilder sb = new StringBuilder(MaxPathLength);
   int len = (int)GetWindowsDirectory(sb, MaxPathLength);
   _windowsDirectory = sb.ToString(0, len);

or

    static string wins()
    {
    StringBuilder sb =new StringBuilder(100);
    int i = 100; uint f;
    GetWindowsDirectory(sb,ref  i);
    return sb.ToString()  ;
    }

Alternative Managed API:

Environment.GetEnvironmentVariable("windir");

Documentation