Este código no bloquea la tecla del menñu de inicio pero si bloquea el boton en pantalla al hacer click sobre el, es una solución parcial, pero talvez de ayuda a encontrar lo que necesitas
Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public 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
Public Declare Function EnableWindow Lib "user32" (ByVal hwnd As Long, ByVal fEnable As Long) As Long
Public Sub StartB(ByVal Enab As Boolean)
Dim lHwnd As Long
lHwnd& = FindWindowEx(FindWindow("Shell_TrayWnd", ""), 0&, "Button", vbNullString)
Call EnableWindow(lHwnd&, CLng(Enab))
End Sub
' En un checkbox:
Private Sub chkSB_Click()
If chkSB.Value = 0 Then
StartB False
chkSB.Caption = "Boton de Inicio Inhabilitado"
Else
StartB True
chkSB.Caption = "Boton de Inicio Habilitado"
End If
End Sub