Disabling the Windows Start Button

This small code sample shows how to disable the Start Menu button through code, simply paste it into a BAS module and use :

' Paste this into a Code Mode (BAS)
option Explicit
private Declare Function FindWindowEx Lib "user32" _
        Alias "FindWindowExA" (byval hWnd1 as Long, byval hWnd2 as Long, _
        byval lpsz1 as string, byval lpsz2 as string) as Long
private Declare Function EnableWindow Lib "user32" (byval hwnd as Long, _
        byval fEnable as Long) as Long

public Sub EnableStartMenuButton(byval bEnable as Boolean)
' Don't forget to re-enable it !
    Dim lHwnd as Long
    lHwnd = FindWindowEx(0&, 0&, "Shell_TrayWnd", vbNullString)
    lHwnd = FindWindowEx(lHwnd, 0&, "Button", vbNullString)
    Call EnableWindow(lHwnd, bEnable)
End Sub

Make sure that you remember to re-enable the start menu button at some point or it could get very frustrating !


  • **** good

    Posted by droove2000 on 06/08/2005 01:34am

    this thing is awesome................ can anybody xplain the code to me ?????????

  • it doesn't work.

    Posted by Arren211314 on 04/05/2004 12:33am

    this function can't disable the "windows" key, when you press it, the start menu shows always. so will you have a better function.

  • Disable using regedit - figure a way out to put the code in registry

    Posted by Legacy on 08/11/2003 12:00am

    Originally posted by: SELVARAJAN

    Check out regedit.com to get reg key to disable start button.It's that simple.

  • Not Working With Keyboard

    Posted by Legacy on 07/24/2003 12:00am

    Originally posted by: Vinay Verma

    When Keyboard Windows Button Is Pressed .
    It Is Not Working

  • NONE

    Posted by Legacy on 07/01/2002 12:00am

    Originally posted by: amit

    iwant to disable restore and MAXIMISE BUTTONS

  • I want the code for enabling the start button

    Posted by Legacy on 03/23/2002 12:00am

    Originally posted by: kavita

    I want the code for enabling the start button

  • Discabling the windows start button

    Posted by Legacy on 01/14/2002 12:00am

    Originally posted by: Okosodo Evans

    The writter of this code is a straight line drawn by God!Please also teach me how to use windos API or otherwise to to disable all control key ( like CTRL-ESC ,

  • Nice trick . But its working when using Ctl + Space

    Posted by Legacy on 08/28/2001 12:00am

    Originally posted by: Sanal Nambiar

    .I got that one. Really Nice. Plz send me the trick to disable ctl+alt+del , alt+tab + ctl+space and all keys in the key board. usin . vb with windows api. (VB) PLz. my request.

  • Nifty

    Posted by Legacy on 08/21/2001 12:00am

    Originally posted by: Scott

    Great for messing with coworkers :)

  • It worked wonderful

    Posted by Legacy on 07/11/2001 12:00am

    Originally posted by: Mohsin Rauf

    I never thought it'd be that easy, now im looking forward to make dependent upon uid of nt4.

  • Loading, Please Wait ...

Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • Enterprises are increasingly looking to platform as a service (PaaS) to lower their costs and speed their time to market for new applications. Developing, deploying, and managing applications in the cloud eliminates the time and expense of managing a physical infrastructure to support them. PaaS offerings must deliver additional long-term benefits, such as a lower total cost of ownership (TCO), rapid scalability, and ease of integration, all while providing robust security and availability. This report …

  • Anthony Christie, the Chief Marketing Officer for Level Communications, is responsible for customer experience, worldwide marketing and product management. In this informative asset, he shares his insights into why a private network connection to cloud-bases applications is the right decision for your enterprise. Download now to find out more.

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date