Einzelnen Beitrag anzeigen

PeterPanino

Registriert seit: 4. Sep 2004
1.451 Beiträge
 
Delphi 10.4 Sydney
 
#16

AW: SendInputHelper - Ein Wrapper, der den Umgang mit SendInput vereinfacht

  Alt 26. Okt 2012, 23:42
Ein möglicher Workaround: Eine eigene Bridge- oder Worker-Unit erzeugen, in der die SendInputHelper-Aufrufe gekapselt werden, z.B.:
Delphi-Quellcode:
unit SIHWorker;

interface

uses
  SendInputHelper;

procedure SendShortCut(DummyShiftState: Integer; ShortChar: Char);

implementation

var
  SIH: TSendInputHelper;

procedure SendShortCut(DummyShiftState: Integer; ShortChar: Char);
begin
  case DummyShiftState of
    1: SIH.AddShortCut([ssShift], ShortChar);
    2: SIH.AddShortCut([ssCtrl], ShortChar);
    3: SIH.AddShortCut([ssAlt], ShortChar);
  end;
  SIH.Flush;
end;

{ Todo: weitere SendInputHelper-Aufrufe }

initialization
  SIH := TSendInputHelper.Create;

finalization
  SIH.Free;

end.
Zusätzlich sollte noch in SendInputHelper.pas TShiftState durch TSIHShiftState ersetzt werden.

Jetzt kann man die Methoden von SendInputHelper indirekt über SIHWorker aufrufen und braucht so SendInputHelper nicht mehr in anderen Units zu deklarieren (was zu den besagten Fehlern führen würde).

Geändert von PeterPanino (27. Okt 2012 um 12:25 Uhr)
  Mit Zitat antworten Zitat