Hola Pablo
En Fox, sinceramente, no lo pude hacer andar ( no le pude dedicar tiempo)
hice mas rápido haciéndolo en c++
Esta compilado con Vs2005 , en código no manejado, es decir, sin el frwk
Probalo en una maquina que no tenga el frwk, de última te lo compilo en vs 6
Teclas
Bloquea combinaciones de Teclas de Windows: ALT+TAB - CTRL+ESC Y ALT+ESC y
MENU DE INICIO
Ejemplo
Clear Dlls
Declare Integer UnHookWinKey In "BlockKey.dll"
Declare Integer IsBlocked In "BlockKey.dll"
Declare Integer HookWinKey In "BlockKey.dll"
List Dlls
?IsBlocked()retorna 0 si ya esta blockeada
?HookWinKey()retornan 0 si fue ok, y 1 si no pudo (chekea internamente si no
fue ya hecho)
?UnHookWinKey()retornan 0 si fue ok, y 1 si no pudo (chekea internamente si
no fue ya hecho)
Ya en la clase
Clear
Public oTest
oTest = CreateObject("BlockKey")
?oTest.HookKey()
?oTest.IsBlocked()
?oTest.UnHookKey()
oTest = null
Release oTest
Define Class BlockKey as Session
*--
Function Init()
*--
Declare Integer UnHookWinKey In "BlockKey.dll"
Declare Integer IsBlocked In "BlockKey.dll"
Declare Integer HookWinKey In "BlockKey.dll"
*--
EndFunc
*--
Function HookKey()
Return =HookWinKey()
EndFunc
*--
Function UnHookKey()
Return =UnHookWinKey()
EndFunc
*--
Function IsBlocked()
Return =IsBlocked()
EndFunc
*--
Function Destroy()
*--
=UnHookWinKey()
Clear Dlls
*--
EndFunc
*--
EndDefine
*---------------------------------------------------------------------------
--------------------------------------------
Links de Interes
Definiciones de Teclado que están aca
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/WinUI
/WindowsUserInterface/UserInput/VirtualKeyCodes.asp
Aquí el Hook para decirle a Windows que a lo que tiene que estar atento es
al teclado
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui
/windowsuserinterface/windowing/hooks/abouthooks.asp
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui
/windowsuserinterface/windowing/hooks/hookreference/hookfunctions/lowlevelke
yboardproc.asp
y necesitamos pasarle la info a Windows a traves de esta funcion
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui
/windowsuserinterface/windowing/hooks/hookreference/hookfunctions/callnextho
okex.asp
Basado en este articulo
http://vbnet.mvps.org/index.html?code/hooks/lowlevelkeyboardproc.htm
y este ayudo
http://www.elguille.info/vb/API/deshabilitarAltTab.asp
http://www.news2news.com/vfp/?group=-1
<http://www.news2news.com/vfp/?group=-1&function=794> &function=794
BlockKeys.rar
Description: Binary data
