| File: Microsoft\VisualBasic\Helpers\UnsafeNativeMethods.vb | Web Access |
| Project: src\winforms\src\Microsoft.VisualBasic.Forms\src\Microsoft.VisualBasic.Forms.vbproj (Microsoft.VisualBasic.Forms) |
' Licensed to the .NET Foundation under one or more agreements. ' The .NET Foundation licenses this file to you under the MIT license. Imports System.Runtime.InteropServices Namespace Microsoft.VisualBasic.CompilerServices <ComVisible(False)> Friend Module UnsafeNativeMethods ''' <summary> ''' Used to determine how much free space is on a disk. ''' </summary> ''' <param name="Directory">Path including drive we're getting information about.</param> ''' <param name="UserSpaceFree">The amount of free space available to the current user.</param> ''' <param name="TotalUserSpace">The total amount of space on the disk relative to the current user.</param> ''' <param name="TotalFreeSpace">The amount of free space on the disk.</param> ''' <returns><see langword="True"/> if function succeeds in getting info otherwise <see langword="False"/>.</returns> <DllImport("Kernel32.dll", CharSet:=CharSet.Auto, BestFitMapping:=False, SetLastError:=True)> Friend Function GetDiskFreeSpaceEx( Directory As String, ByRef UserSpaceFree As Long, ByRef TotalUserSpace As Long, ByRef TotalFreeSpace As Long) As <MarshalAs(UnmanagedType.Bool)> Boolean End Function ''' <summary> ''' Gets the state of the specified key on the keyboard when the function ''' is called. ''' </summary> ''' <param name="KeyCode">Integer representing the key in question.</param> ''' <returns> ''' The high order byte is 1 if the key is down. The low order byte is one ''' if the key is toggled on (i.e. for keys like CapsLock) ''' </returns> <DllImport("User32.dll", ExactSpelling:=True, CharSet:=CharSet.Auto)> Friend Function GetKeyState(KeyCode As Integer) As Short End Function ''' <summary> ''' Frees memory allocated from the local heap. i.e. frees memory allocated ''' by LocalAlloc or LocalReAlloc. ''' </summary> <DllImport("kernel32", ExactSpelling:=True, SetLastError:=True)> Friend Function LocalFree(LocalHandle As IntPtr) As IntPtr End Function End Module End Namespace