2011-02-14 54 views

回答

6

試試這個在您的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; 

您可以在msdn

+0

該代碼獲取更多*印刷機*本大寫鎖定鍵。您可能想要添加另一個鍵盤事件來模擬密鑰的*版本*。 –

+0

@Rob:對,謝謝。 – CloudyMarble

+0

這不適合我。如果有問題,我正在使用XP家庭版。 –