如下:
function GetSysFocus : integer;
Var
hOtherWin,OtherThreadID,hFocusWin : integer;
Begin
hOtherWin := GetForegroundWindow;
OtherThreadID := GetWindowThreadProcessID( hOtherWin, nil);
If AttachThreadInput( GetCurrentThreadID, OtherThreadID, true ) Then
Begin
hFocusWin := GetFocus;
result := GetFocus;
AttachThreadInput( GetCurrentThreadID, OtherThreadID, False );
End
else
result := getFocus;
End;
procedure TForm1.Timer1Timer(Sender: TObject);
var
s:string;
begin
s:='test';
SendMessage(GetSysFocus, WM_SETTEXT,0,longint(PCHAR(S)));
end;