2011-02-14 19 views

Odpowiedz

6

Spróbuj na 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; 

można znaleźć więcej informacji na msdn

+0

że kod * * naciska klawisz Caps-lock. Możesz dodać kolejne zdarzenie klawiatury, aby zasymulować * wydanie * klucza. –

+0

@Rob: prawda, dziękuję. – CloudyMarble

+0

To nie działa dla mnie. Używam domu XP, jeśli to ma znaczenie. –