2011-02-14 10 views

Respuesta

6

Pruebe esto en su FormCreate:

procedure TForm1.FormCreate(Sender: TObject); 
var 
    MyKeys: array of tagInput; 
begin 
    setLength(MyKeys, 2); 
    MyKeys[0].Itype:=INPUT_KEYBOARD; 
    MyKeys[0].ki.wVk:=VK_CAPITAL; 
    MyKeys[0].ki.wScan:=0; 
    MyKeys[0].ki.dwFlags:=4; 
    MyKeys[0].ki.time:=0; 
    MyKeys[0].ki.dwExtraInfo:=0; 

    MyKeys[1].Itype:=INPUT_KEYBOARD; 
    MyKeys[1].ki.wVk:=VK_CAPITAL; 
    MyKeys[1].ki.wScan:=0; 
    MyKeys[1].ki.dwFlags:=4+2; 
    MyKeys[1].ki.time:=0; 
    MyKeys[1].ki.dwExtraInfo:=0; 
    SendInput(2, MyKeys[0], sizeof(tagInput)); 
end; 

usted puede encontrar más información sobre msdn

+0

Ese código * * prensas de la tecla de bloqueo de mayúsculas. Es posible que desee agregar otro evento de teclado para simular el * lanzamiento * de la clave. –

+0

@Rob: bien, gracias. – CloudyMarble

+0

Eso no funcionó para mí. Estoy usando XP en casa si eso importa. –

Cuestiones relacionadas