Einzelnen Beitrag anzeigen

Benutzerbild von maximus Caesar
maximus Caesar

Registriert seit: 26. Sep 2004
Ort: Biberach
319 Beiträge
 
Turbo Delphi für Win32
 
#14

Re: Tastensimilation an Programm senden

  Alt 13. Okt 2004, 13:35
Hier der aktuelle Source-Code:

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, SRUtils;

type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
  private
  ID1:Integer;
  PROCEDURE WMHOTKEY(VAR MSG: TWMHOTKEY); MESSAGE WM_HOTKEY;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

PROCEDURE TFORM1.FORMCREATE(SENDER: TOBJECT);
BEGIN
 ID1 := GLOBALADDATOM('HOTKEY1');
 REGISTERHOTKEY(HANDLE, ID1, 0, ORD('B'));
END;

PROCEDURE TFORM1.WMHOTKEY(VAR MSG: TWMHOTKEY);
BEGIN
 IF MSG.HOTKEY = ID1 THEN
 begin
 Keybd_Event(VK_CONTROL,0,0,0);
 sendkeys('pesos');

 Keybd_Event(VK_CONTROL,0,KEYEVENTF_KEYUP,0);
 end;
END;

PROCEDURE TFORM1.FORMDESTROY(SENDER: TOBJECT);
BEGIN
 UNREGISTERHOTKEY(HANDLE, ID1);
 GLOBALDELETEATOM(ID1);
END;


end.
Strg wird jetzt zwar simuliert, aber nicht, das die Taste während der Eingabe von "pesos" weiterhin gedrückt wird!
  Mit Zitat antworten Zitat