How do you disable the alt key?????<p align=left><font face="Times New Roman" size=5>Hi, i'm new at this, how would you stop someone using the alt key, like alt+F4, alt+ctrl+delete OR alt+tab</font></p>© 2009 Microsoft Corporation. All rights reserved.Fri, 29 Aug 2008 21:44:13 Z781df696-a54d-487e-8a5a-a46a99481bc5http://social.msdn.microsoft.com/Forums/en-US/vbide/thread/781df696-a54d-487e-8a5a-a46a99481bc5#781df696-a54d-487e-8a5a-a46a99481bc5http://social.msdn.microsoft.com/Forums/en-US/vbide/thread/781df696-a54d-487e-8a5a-a46a99481bc5#781df696-a54d-487e-8a5a-a46a99481bc5kandaras0http://social.msdn.microsoft.com/Profile/en-US/?user=kandaras0How do you disable the alt key?????<p align=left><font face="Times New Roman" size=5>Hi, i'm new at this, how would you stop someone using the alt key, like alt+F4, alt+ctrl+delete OR alt+tab</font></p>Mon, 06 Aug 2007 07:24:37 Z2007-08-09T04:17:04Zhttp://social.msdn.microsoft.com/Forums/en-US/vbide/thread/781df696-a54d-487e-8a5a-a46a99481bc5#b4db2eca-aa86-4d30-8d2a-c7b12af62776http://social.msdn.microsoft.com/Forums/en-US/vbide/thread/781df696-a54d-487e-8a5a-a46a99481bc5#b4db2eca-aa86-4d30-8d2a-c7b12af62776Anarchyhttp://social.msdn.microsoft.com/Profile/en-US/?user=AnarchyHow do you disable the alt key?????<p align=left>I'll tell you, but only if you PROMISE you aren't going to write an app which is so so self-important that it thinks it must be always on top</p>Mon, 06 Aug 2007 15:09:29 Z2007-08-06T15:09:29Zhttp://social.msdn.microsoft.com/Forums/en-US/vbide/thread/781df696-a54d-487e-8a5a-a46a99481bc5#1e418689-541e-4357-9a2c-4f129e5b10e4http://social.msdn.microsoft.com/Forums/en-US/vbide/thread/781df696-a54d-487e-8a5a-a46a99481bc5#1e418689-541e-4357-9a2c-4f129e5b10e4James A. Gayharthttp://social.msdn.microsoft.com/Profile/en-US/?user=James%20A.%20GayhartHow do you disable the alt key?????<p><font face="Times New Roman">Hi,</font></p> <p align=left><font face="Times New Roman"></font> </p> <p align=left><font face="Times New Roman">I hope that this will get you started; watch for word wrap:</font></p> <p align=left><font face="Times New Roman"></font> </p><font color="#0000ff" size=2> <p align=left> <div class=codeseg> <div class=codecontent> <div class=codesniptitle><span style="width:100%">Code Snippet</span></div><font color="#0000ff" size=2> <p align=left>Imports</font><font size=2> System.Runtime.InteropServices</p></font><font color="#0000ff" size=2> <p align=left>Imports</font><font size=2> System.Reflection</p></font><font color="#0000ff" size=2> <p align=left>Module</font><font size=2> mKeyboard</p> <p align=left>#</font><font color="#0000ff" size=2>Region</font><font size=2> </font><font color="#a31515" size=2>&quot;Declarations&quot;</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>    Private</font><font size=2> </font><font color="#0000ff" size=2>Const</font><font size=2> HC_ACTION </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</font><font size=2> = 0</p> <p align=left></font><font color="#0000ff" size=2>    Private</font><font size=2> </font><font color="#0000ff" size=2>Const</font><font size=2> WH_KEYBOARD_LL </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</font><font size=2> = 13&amp;</p> <p align=left></font><font color="#0000ff" size=2></font> </p> <p align=left><font color="#0000ff" size=2>    Private</font><font size=2> </font><font color="#0000ff" size=2>Structure</font><font size=2> KBDLLHookStruct</p> <p align=left></font><font color="#0000ff" size=2>        Public</font><font size=2> vkCode </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>        Public</font><font size=2> scanCode </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>        Public</font><font size=2> flags </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>        Public</font><font size=2> time </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>        Public</font><font size=2> dwExtraInfo </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>    End</font><font size=2> </font><font color="#0000ff" size=2>Structure</font></p> <p align=left><font color="#0000ff" size=2> </p></font><font size=2> <p align=left><font color="#0000ff">    </font>&lt;MarshalAs(UnmanagedType.FunctionPtr)&gt; _</p> <p align=left></font><font color="#0000ff" size=2>    Private</font><font size=2> callback </font><font color="#0000ff" size=2>As</font><font size=2> KeyboardHookDelegate</p> <p align=left></font><font color="#0000ff" size=2>    Private</font><font size=2> mbBlockKeys </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Boolean</font><font size=2> = </font><font color="#0000ff" size=2>True</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>    Private</font><font size=2> miKeyboardHandle </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</font><font size=2> = 0</font></p> <p align=left><font size=2> </p> <p align=left></font><font color="#0000ff" size=2>    Private</font><font size=2> </font><font color="#0000ff" size=2>Delegate</font><font size=2> </font><font color="#0000ff" size=2>Function</font><font size=2> KeyboardHookDelegate(</font><font color="#0000ff" size=2>ByVal</font><font size=2> Code </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</font><font size=2>, _</font></p> <p align=left><font color="#0000ff">        <font size=2>ByVal</font></font><font size=2> wParam </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</font><font size=2>, </font><font color="#0000ff" size=2>ByRef</font><font size=2> lParam </font><font color="#0000ff" size=2>As</font><font size=2> KBDLLHookStruct) </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</font></p> <p align=left><font color="#0000ff" size=2> </p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>    Private</font><font size=2> </font><font color="#0000ff" size=2>Declare</font><font size=2> </font><font color="#0000ff" size=2>Function</font><font size=2> CallNextHookEx </font><font color="#0000ff" size=2>Lib</font><font size=2> </font><font color="#a31515" size=2>&quot;user32&quot;</font><font size=2> ( _</font></p> <p align=left><font color="#0000ff">        <font size=2>ByVal</font></font><font size=2> hHook </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</font><font size=2>, </font><font color="#0000ff" size=2>ByVal</font><font size=2> nCode </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</font><font size=2>, _</font></p> <p align=left><font color="#0000ff">        <font size=2>ByVal</font></font><font size=2> wParam </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</font><font size=2>, </font><font color="#0000ff" size=2>ByVal</font><font size=2> lParam </font><font color="#0000ff" size=2>As</font><font size=2> KBDLLHookStruct) </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</p> <p align=left> </p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>    Private</font><font size=2> </font><font color="#0000ff" size=2>Declare</font><font size=2> </font><font color="#0000ff" size=2>Function</font><font size=2> SetWindowsHookEx </font><font color="#0000ff" size=2>Lib</font><font size=2> </font><font color="#a31515" size=2>&quot;user32&quot;</font><font size=2> _</font></p> <p align=left><font color="#0000ff">        <font size=2>Alias</font></font><font size=2> </font><font color="#a31515" size=2>&quot;SetWindowsHookExA&quot;</font><font size=2> _</p> <p align=left><font color="#0000ff">        </font>(</font><font color="#0000ff" size=2>ByVal</font><font size=2> idHook </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</font><font size=2>, </font><font color="#0000ff" size=2>ByVal</font><font size=2> lpfn </font><font color="#0000ff" size=2>As</font><font size=2> KeyboardHookDelegate, _</font></p> <p align=left><font color="#0000ff">        <font size=2>ByVal</font></font><font size=2> hmod </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</font><font size=2>, </font><font color="#0000ff" size=2>ByVal</font><font size=2> dwThreadId </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</font><font size=2>) </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</font></p> <p align=left><font color="#0000ff" size=2> </p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>    Private</font><font size=2> </font><font color="#0000ff" size=2>Declare</font><font size=2> </font><font color="#0000ff" size=2>Function</font><font size=2> UnhookWindowsHookEx </font><font color="#0000ff" size=2>Lib</font><font size=2> </font><font color="#a31515" size=2>&quot;user32&quot;</font><font size=2> ( _</font></p> <p align=left><font color="#0000ff">        <font size=2>ByVal</font></font><font size=2> hHook </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</font><font size=2>) </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</p></font><font size=2> <p align=left>#</font><font color="#0000ff" size=2>End</font><font size=2> </font><font color="#0000ff" size=2>Region</font></p> <p align=left><font color="#0000ff" size=2> </p></font><font size=2> <p align=left>#</font><font color="#0000ff" size=2>Region</font><font size=2> </font><font color="#a31515" size=2>&quot;Properties&quot;</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>    Public</font><font size=2> </font><font color="#0000ff" size=2>Property</font><font size=2> BlockKeyCombinations() </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Boolean</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>        Get</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>            Return</font><font size=2> mbBlockKeys</p> <p align=left></font><font color="#0000ff" size=2>        End</font><font size=2> </font><font color="#0000ff" size=2>Get</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>        Set</font><font size=2>(</font><font color="#0000ff" size=2>ByVal</font><font size=2> value </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Boolean</font><font size=2>)</p> <p align=left><font color="#0000ff">            </font>mbBlockKeys = value</p> <p align=left></font><font color="#0000ff" size=2>        End</font><font size=2> </font><font color="#0000ff" size=2>Set</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>    End</font><font size=2> </font><font color="#0000ff" size=2>Property</font></p> <p align=left><font color="#0000ff" size=2> </p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>    Public</font><font size=2> </font><font color="#0000ff" size=2>ReadOnly</font><font size=2> </font><font color="#0000ff" size=2>Property</font><font size=2> IsHooked() </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Boolean</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>        Get</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>            Return</font><font size=2> miKeyboardHandle &lt;&gt; 0</p> <p align=left></font><font color="#0000ff" size=2>        End</font><font size=2> </font><font color="#0000ff" size=2>Get</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>    End</font><font size=2> </font><font color="#0000ff" size=2>Property</p></font><font size=2> <p align=left>#</font><font color="#0000ff" size=2>End</font><font size=2> </font><font color="#0000ff" size=2>Region</font></p> <p align=left><font color="#0000ff" size=2> </p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>    Public</font><font size=2> </font><font color="#0000ff" size=2>Function</font><font size=2> IsInIDE() </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Boolean</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>        Return</font><font size=2> System.Diagnostics.Debugger.IsAttached</p> <p align=left></font><font color="#0000ff" size=2>    End</font><font size=2> </font><font color="#0000ff" size=2>Function</font></p> <p align=left><font color="#0000ff" size=2> </p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>    Public</font><font size=2> </font><font color="#0000ff" size=2>Sub</font><font size=2> HookKeyboard()</p> <p align=left></font><font color="#008000" size=2><font color="#0000ff">        </font>' Release any existing keyboard hook.</p></font><font size=2> <p align=left><font color="#0000ff">        </font>UnhookKeyboard()</p> <p align=left> </p> <p align=left></font><font color="#0000ff" size=2>        If</font><font size=2> </font><font color="#0000ff" size=2>Not</font><font size=2> IsInIDE() </font><font color="#0000ff" size=2>Then</p></font><font size=2> <p align=left><font color="#0000ff">            </font>callback = </font><font color="#0000ff" size=2>New</font><font size=2> KeyboardHookDelegate(</font><font color="#0000ff" size=2>AddressOf</font><font size=2> KeyboardCallback)</p> <p align=left><font color="#0000ff">            </font>miKeyboardHandle = SetWindowsHookEx(WH_KEYBOARD_LL, callback, _</p> <p align=left><font color="#0000ff">            </font>Marshal.GetHINSTANCE([Assembly].GetExecutingAssembly.GetModules()(0)).ToInt32, 0)</p> <p align=left></font><font color="#0000ff" size=2>        End</font><font size=2> </font><font color="#0000ff" size=2>If</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>    End</font><font size=2> </font><font color="#0000ff" size=2>Sub</font></p> <p align=left><font color="#0000ff" size=2> </p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>    Public</font><font size=2> </font><font color="#0000ff" size=2>Sub</font><font size=2> UnhookKeyboard()</p> <p align=left></font><font color="#0000ff" size=2>        If</font><font size=2> (IsHooked()) </font><font color="#0000ff" size=2>Then</font><font size=2> </font><font color="#0000ff" size=2>Call</font><font size=2> UnhookWindowsHookEx(miKeyboardHandle)</p> <p align=left></font><font color="#0000ff" size=2>    End</font><font size=2> </font><font color="#0000ff" size=2>Sub</font></p> <p align=left><font color="#0000ff" size=2> </p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>    Private</font><font size=2> </font><font color="#0000ff" size=2>Function</font><font size=2> BlockKeyCombination( _</font></p> <p align=left><font color="#0000ff">        <font size=2>ByVal</font></font><font size=2> Hookstruct </font><font color="#0000ff" size=2>As</font><font size=2> KBDLLHookStruct) </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Boolean</font></p> <p align=left><font color="#0000ff" size=2> </p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>        Dim</font><font size=2> bResult </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Boolean</font><font size=2> = </font><font color="#0000ff" size=2>False</font></p> <p align=left><font color="#0000ff" size=2> </p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>        If</font><font size=2> mbBlockKeys </font><font color="#0000ff" size=2>Then</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>            Select</font><font size=2> </font><font color="#0000ff" size=2>Case</font><font size=2> Hookstruct.vkCode</p> <p align=left></font><font color="#0000ff" size=2>                Case</font><font size=2> System.ConsoleKey.Escape</p> <p align=left></font><font color="#0000ff" size=2>                    If</font><font size=2> </font><font color="#0000ff" size=2>My</font><font size=2>.Computer.Keyboard.CtrlKeyDown </font><font color="#0000ff" size=2>Then</p></font><font size=2> <p align=left><font color="#0000ff">                        </font>Debug.Print(</font><font color="#a31515" size=2>&quot;Blocking: Ctrl-Esc&quot;</font><font size=2>)</p> <p align=left><font color="#0000ff">                        </font>bResult = </font><font color="#0000ff" size=2>True</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>                    ElseIf</font><font size=2> </font><font color="#0000ff" size=2>My</font><font size=2>.Computer.Keyboard.AltKeyDown </font><font color="#0000ff" size=2>Then</p></font><font size=2> <p align=left><font color="#0000ff">                        </font>Debug.Print(</font><font color="#a31515" size=2>&quot;Blocking: Alt-Esc&quot;</font><font size=2>)</p> <p align=left><font color="#0000ff">                        </font>bResult = </font><font color="#0000ff" size=2>True</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>                    End</font><font size=2> </font><font color="#0000ff" size=2>If</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>                Case</font><font size=2> System.ConsoleKey.Tab</p> <p align=left></font><font color="#0000ff" size=2>                    If</font><font size=2> </font><font color="#0000ff" size=2>My</font><font size=2>.Computer.Keyboard.AltKeyDown </font><font color="#0000ff" size=2>Then</p></font><font size=2> <p align=left><font color="#0000ff">                        </font>Debug.Print(</font><font color="#a31515" size=2>&quot;Blocking: Alt-Tab&quot;</font><font size=2>)</p> <p align=left><font color="#0000ff">                        </font>bResult = </font><font color="#0000ff" size=2>True</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>                    End</font><font size=2> </font><font color="#0000ff" size=2>If</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>                Case</font><font size=2> System.ConsoleKey.RightWindows, </font><font size=2>System.ConsoleKey.LeftWindows</p> <p align=left><font color="#0000ff">                    </font>Debug.Print(</font><font color="#a31515" size=2>&quot;Blocking: Windows Key&quot;</font><font size=2>)</p> <p align=left><font color="#0000ff">                    </font>bResult = </font><font color="#0000ff" size=2>True</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>                Case</font><font size=2> System.ConsoleKey.Applications</p> <p align=left><font color="#0000ff">                    </font>Debug.Print(</font><font color="#a31515" size=2>&quot;Blocking: Application Key&quot;</font><font size=2>)</p> <p align=left><font color="#0000ff">                    </font>bResult = </font><font color="#0000ff" size=2>True</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>                Case</font><font size=2> System.ConsoleKey.F4</p> <p align=left></font><font color="#0000ff" size=2>                    If</font><font size=2> </font><font color="#0000ff" size=2>My</font><font size=2>.Computer.Keyboard.AltKeyDown </font><font color="#0000ff" size=2>Then</p></font><font size=2> <p align=left><font color="#0000ff">                        </font>Debug.Print(</font><font color="#a31515" size=2>&quot;Blocking: Alt-F4&quot;</font><font size=2>)</p> <p align=left><font color="#0000ff">                        </font>bResult = </font><font color="#0000ff" size=2>True</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>                    End</font><font size=2> </font><font color="#0000ff" size=2>If</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>                Case</font><font size=2> </font><font color="#0000ff" size=2>Else</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>            End</font><font size=2> </font><font color="#0000ff" size=2>Select</p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>        End</font><font size=2> </font><font color="#0000ff" size=2>If</font></p> <p align=left><font color="#0000ff" size=2> </p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>        Return</font><font size=2> bResult</p> <p align=left></font><font color="#0000ff" size=2>    End</font><font size=2> </font><font color="#0000ff" size=2>Function</font></p> <p align=left><font color="#0000ff" size=2> </p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>    Private</font><font size=2> </font><font color="#0000ff" size=2>Function</font><font size=2> KeyboardCallback(</font><font color="#0000ff" size=2>ByVal</font><font size=2> Code </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</font><font size=2>, _</font></p> <p align=left><font color="#0000ff">        <font size=2>ByVal</font></font><font size=2> wParam </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</font><font size=2>, </font><font color="#0000ff" size=2>ByRef</font><font size=2> lParam </font><font color="#0000ff" size=2>As</font><font size=2> KBDLLHookStruct) </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</font></p> <p align=left><font color="#0000ff" size=2> </p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>        Dim</font><font size=2> lResult </font><font color="#0000ff" size=2>As</font><font size=2> </font><font color="#0000ff" size=2>Integer</font><font size=2> = 0</p> <p align=left></font><font color="#0000ff" size=2>        If</font><font size=2> (Code = HC_ACTION) </font><font color="#0000ff" size=2>AndAlso</font><font size=2> (BlockKeyCombination(lParam)) </font><font color="#0000ff" size=2>Then</p></font><font size=2> <p align=left><font color="#0000ff">            </font>lResult = 1</p> <p align=left></font><font color="#0000ff" size=2>        Else</p></font><font size=2> <p align=left><font color="#0000ff">            </font>lResult = CallNextHookEx(miKeyboardHandle, Code, wParam, lParam)</p> <p align=left></font><font color="#0000ff" size=2>        End</font><font size=2> </font><font color="#0000ff" size=2>If</font></p> <p align=left><font color="#0000ff" size=2> </p></font><font size=2> <p align=left></font><font color="#0000ff" size=2>        Return</font><font size=2> lResult</p> <p align=left></font><font color="#0000ff" size=2>    End</font><font size=2> </font><font color="#0000ff" size=2>Function</p> <p align=left>End</font><font size=2> </font><font color="#0000ff" size=2>Module</font></p> <p align=left> </p></div></div> <p align=left> </p></font> <p></p> <p align=left><font color="#0000ff" size=2></font></p>Wed, 08 Aug 2007 11:44:49 Z2007-08-09T04:17:04Zhttp://social.msdn.microsoft.com/Forums/en-US/vbide/thread/781df696-a54d-487e-8a5a-a46a99481bc5#0a1c2868-aed8-4c62-89e2-4a563e6b67cehttp://social.msdn.microsoft.com/Forums/en-US/vbide/thread/781df696-a54d-487e-8a5a-a46a99481bc5#0a1c2868-aed8-4c62-89e2-4a563e6b67ceJustAnotherITGuyhttp://social.msdn.microsoft.com/Profile/en-US/?user=JustAnotherITGuyHow do you disable the alt key?????<p>James,</p> <p align=left> </p> <p align=left>I am having a very similar issue to Simone1.  I will try this out and see if it addresses the problem.</p> <p align=left> </p> <p align=left>Thank you for the help...</p> <p align=left><font face=Arial size=2></font> </p>Tue, 16 Oct 2007 13:51:17 Z2007-10-16T13:51:17Zhttp://social.msdn.microsoft.com/Forums/en-US/vbide/thread/781df696-a54d-487e-8a5a-a46a99481bc5#d6764737-ce67-4dca-88ba-ede41e7dcf07http://social.msdn.microsoft.com/Forums/en-US/vbide/thread/781df696-a54d-487e-8a5a-a46a99481bc5#d6764737-ce67-4dca-88ba-ede41e7dcf07JustAnotherITGuyhttp://social.msdn.microsoft.com/Profile/en-US/?user=JustAnotherITGuyHow do you disable the alt key?????<p>James,</p> <p align=left> </p> <p align=left>I got the code into my program, but what do I do with it?  What do I call/pass so that input is checked?</p> <p align=left> </p> <p align=left>I have it as a module available to the whole program.  I can call the HookKeyboard public sub - but when I debug the code, pressing the keys that your code should trap, nothing happens...</p> <p align=left><font face=Arial size=2></font> </p>Tue, 16 Oct 2007 14:40:16 Z2007-10-16T14:40:16Zhttp://social.msdn.microsoft.com/Forums/en-US/vbide/thread/781df696-a54d-487e-8a5a-a46a99481bc5#f8c89054-fb11-425b-8c17-5fe99fbd96c6http://social.msdn.microsoft.com/Forums/en-US/vbide/thread/781df696-a54d-487e-8a5a-a46a99481bc5#f8c89054-fb11-425b-8c17-5fe99fbd96c6James A. Gayharthttp://social.msdn.microsoft.com/Profile/en-US/?user=James%20A.%20GayhartHow do you disable the alt key?????<p align=left>Hi,</p> <p align=left><br>Call mKeyboard.HookKeyboard in the application startup.  </p> <p align=left>Call mKeyboard.UnhookKeyboard when shutting down.</p> <p align=left>Change mKeyboard.BlockKeyCombination to disallow key combinations.</p> <p align=left>Set mKeyboard.BlockKeyCombinations to True to block the defined key combinations.</p> <p align=left> </p> <p align=left>That should get you going.  Keep in mind that HookKeyboard will not install a new keyboard hook when running in Debug mode.  Try running in release mode.</p> <p align=left> </p> <p align=left>If you are still stuck, please let me know.</p>Tue, 16 Oct 2007 15:08:15 Z2007-10-16T15:08:15Zhttp://social.msdn.microsoft.com/Forums/en-US/vbide/thread/781df696-a54d-487e-8a5a-a46a99481bc5#67183a25-9819-433c-9cf8-46107fef41achttp://social.msdn.microsoft.com/Forums/en-US/vbide/thread/781df696-a54d-487e-8a5a-a46a99481bc5#67183a25-9819-433c-9cf8-46107fef41acHanneSThEGreaThttp://social.msdn.microsoft.com/Profile/en-US/?user=HanneSThEGreaTHow do you disable the alt key?????<div class=quote> <table width="85%"> <tbody> <tr> <td class=txt4> <strong>kandaras0 wrote:</strong></td></tr> <tr> <td class=quoteTable> <table width="100%"> <tbody> <tr> <td class=txt4 valign=top width="100%"> <p align=left><font face="Times New Roman" size=5>Hi, i'm new at this, how would you stop someone using the alt key, like alt+F4, alt+ctrl+delete OR alt+tab</font></p> <p></p></td></tr></tbody></table></td></tr></tbody></table></div> <p></p> <p align=left> </p> <p align=left>You can perhaps aslo use the <strong>SystemParametersInfo </strong>API here.  This API will block all these keys ( except for Alt + Ctrl + Del ).  The reaon for this is that whether or not you specify it, the Task manager ( on Windows XP ) will still show.</p> <p align=left>That will be your biggest headache.</p> <p align=left>You can disable the Taskmanager by adding a Timer to your Form, and keep bringing your form to the fron ( ok, it won't disable tha taskmanager, but it will hide it )</p> <p align=left>To really disable the Taskmanager from showing by editing the registry key :</p> <p align=left>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\LogonType</p> <p align=left> </p> <p align=left>or you could get the Taskmanager's Process Id with the <strong>GetWindowThreadProcessId</strong> API, then terminate it with the <strong>TerminateProcess </strong>API.</p> <p align=left> </p> <p align=left>To be honest.  I'm not if any of my comments were illegal in this forum, so mods, feel free to edit / delet as you see fit.</p> <p align=left> </p> <p align=left>Another comment kandaras, is that it is <strong>very impractical </strong>and <strong>illogical</strong>  why anyone would need to hide the taskmanager completely.  The Task Manager exists for a reason.</p>Tue, 16 Oct 2007 15:43:57 Z2007-10-16T15:43:57Zhttp://social.msdn.microsoft.com/Forums/en-US/vbide/thread/781df696-a54d-487e-8a5a-a46a99481bc5#c1463b0c-f5cb-4783-8ee8-4095d5216351http://social.msdn.microsoft.com/Forums/en-US/vbide/thread/781df696-a54d-487e-8a5a-a46a99481bc5#c1463b0c-f5cb-4783-8ee8-4095d5216351James A. Gayharthttp://social.msdn.microsoft.com/Profile/en-US/?user=James%20A.%20GayhartHow do you disable the alt key?????<p align=left> <div class=quote> <table width="85%"> <tbody> <tr> <td class=txt4> <strong>HanneSThEGreaT wrote:</strong></td></tr> <tr> <td class=quoteTable> <table width="100%"> <tbody> <tr> <td class=txt4 valign=top width="100%"> <p></p> <p align=left>Another comment kandaras, is that it is <strong>very impractical </strong>and <strong>illogical</strong>  why anyone would need to hide the taskmanager completely.  The Task Manager exists for a reason.</p> <p></p></td></tr></tbody></table></td></tr></tbody></table></div> <p></p> <p align=left> </p> <p align=left>I agree that <em>most</em> applications should not prevent Task Manager from popping up nor should they block key combinations.  Instead, policies are probably a better way to go.  In my particular case, the applications I write control machinery.  Forcibly killing the application or doing other tasks in Windows could cause machine malfunctions.  Since we do not always have have access to change policies, it was easier/quicker to disable &quot;stuff&quot; within the application.  That being said, we do allow that ability to be configured by user access (operators can't exit the app, but admins can for example).</p> <p> </p> <p align=left>I am, however, always open to different solutions.</p>Tue, 16 Oct 2007 16:54:48 Z2007-10-16T16:54:48Zhttp://social.msdn.microsoft.com/Forums/en-US/vbide/thread/781df696-a54d-487e-8a5a-a46a99481bc5#a2e1bf5a-39be-47ac-aaa3-0f0d9fd658dbhttp://social.msdn.microsoft.com/Forums/en-US/vbide/thread/781df696-a54d-487e-8a5a-a46a99481bc5#a2e1bf5a-39be-47ac-aaa3-0f0d9fd658dbAybe81http://social.msdn.microsoft.com/Profile/en-US/?user=Aybe81How do you disable the alt key?????Hello James,<br><br><br>I had to change the visibility of BlockKeyCombination to Public because i couldn't call it from my window.<br><br>Also, when i call the BlockKeyCombination function, no parameters pulls out thru IntelliSense.<br><br>What should i specify in the KBDLLHookStruct structure ?<br><br><br>I have seen this : <br><div class=title><br>KBDLLHOOKSTRUCT Structure<br></div><a href="http://msdn.microsoft.com/en-us/library/ms644967(VS.85).aspx">http://msdn.microsoft.com/en-us/library/ms644967(VS.85).aspx</a><br><br>But it doesn't tell what values are for the desired key ... etc<br><br><br>Help please,<br><br>Thank you !<br> Fri, 29 Aug 2008 21:44:13 Z2008-08-29T21:44:13Z