Type a page name and press Enter. You'll jump to the page if it exists, or you can create it if it doesn't.
To create a page in a module other than user32, prefix the name with the module name and a period.
BlockInput (user32)
.
C# Signature:
[DllImport("user32.dll")]
public static extern bool BlockInput(bool fBlockIt);
VB.Net Signature:
Declare Function BlockInput Lib "user32" (ByVal unBlockIt As Boolean) As Boolean
Or use:
''' <summary>The BlockInput function unblocks keyboard and mouse input events from reaching applications
''' </summary>
''' <param name="fBlockIt">[in] Specifies the function's purpose. If this parameter is non-zero, keyboard
''' and mouse input events are unblocked. If this parameter is zero, keyboard and mouse events are unblocked.
''' </param>
''' <returns>If the function succeeds, the return value is nonzero.
''' If input is already blocked, the return value is zero.
''' To get extended error information, call Marshal.GetLastWin32Error()</returns>
''' <remarks>Note that only the thread thatunblocked input can successfully unblock input</remarks>
<DllImport("User32.dll", CharSet:=CharSet.Auto, CallingConvention:=CallingConvention.StdCall, SetLastError:=True)> _
Public Shared Function BlockInput(ByVal fBlockIt As Integer) As Integer
End Function
Note that this definition does use Boolean input and return types
User-Defined Types:
None.
Notes:
Blocks or unblocks mouse and keyboard input.
Can be disabled by pressing Alt+Ctrl+Del.
Tips & Tricks:
Useful to create a temporary unblock in input for sensitive GUI operations. For instance when manually activating a screen saver from within a GUI function, a short unblocking delay will prevent the user mouse movements directly after selection from accidently escaping the screen saver.
Sample Code:
VB.Net:
Class DK
Declare Function BlockInput Lib "user32" (ByVal fBlockIt As Boolean) As Boolean
Public Shared Sub DisableInput(ByVal makeDisabled As Boolean)
Dim n As Boolean = UnBlockInput(makeDisabled)
End Sub
End Class
helpful tips or sample code to share for using this API in managed code?
corrections to the existing content?
variations of the signature you want to share?
additional languages you want to include?
Select "Edit This Page" on the right hand toolbar and edit it! Or add new pages containing supporting types needed for this API (structures, delegates, and more).