Ver Mensaje Individual
  #12  
Antiguo 23-10-2006
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Reputación: 24
seoane Va por buen camino
El secreto de simular pulsaciones de teclado es el intervalo entre que se presiona la tecla y se suelta, si este es muy corto algunos programa ni se darán cuenta de que la tecla se ha pulsado. En el siguiente ejemplo lo que hago es utilizar el evento WM_RBUTTONUP para activar o desactivar un Timer, dentro del evento del timer voy alternativamente presionando y soltando la tecla. Es solo un ejemplo se puede mejorar:

Revisa el zip para ver el código completo:
Código Delphi [-]
function MouseProc(Code: Integer; WParam, LParam: DWORD): LRESULT; stdcall;
begin
  if Code = HC_ACTION then
  begin
    if WParam = WM_RBUTTONUP then
      frmMain.Timer1.Enabled:= not frmMain.Timer1.Enabled;
  end;
  Result := CallNextHookEx(Hook, Code, WParam, LParam);
end;

procedure TfrmMain.Timer1Timer(Sender: TObject);
begin
  if Abajo then
    SendKey(Ord('Z'),TRUE)
  else
    SendKey(Ord('Z'),FALSE);
  Abajo:= not Abajo;
end;
Archivos Adjuntos
Tipo de Archivo: zip Ejemplo33.zip (5,3 KB, 57 visitas)
Responder Con Cita