
Zitat von
Logic:
Ihr sagt immer schaut doch in der Hilfe, aber genau in den Hälfte der Threads genau das gleiche drin... aber gut gesucht hatte ich ja schon, das Ergebnis liefert 45 Treffern... soderle dann bin ich von oben nach unten druchgegangen.
Wenn man nach
SendInput Delphi sucht, findet man eine Procedur
SendAltTab.
Diese Procedur zeigt, wie man SendInput() verwenden kann.
Ich habe die Procedur ein wenig angepasst und daraus eine SendCtrlC Procedur gemacht.
Delphi-Quellcode:
procedure SendCtrlC();
var
KeyInputs: array of TInput;
{$J+}const
KeyInputCount: Integer = 0;{$J-}
procedure KeybdInput(VKey: Byte; Flags: DWORD);
begin
Inc(KeyInputCount);
SetLength(KeyInputs, KeyInputCount);
KeyInputs[KeyInputCount - 1].Itype := INPUT_KEYBOARD;
with KeyInputs[KeyInputCount - 1].ki do
begin
wVk := VKey;
wScan := MapVirtualKey(wVk, 0);
dwFlags := KEYEVENTF_EXTENDEDKEY;
dwFlags := Flags or dwFlags;
time := 0;
dwExtraInfo := 0;
end;
end;
begin
KeybdInput(VK_CONTROL, 0);
KeybdInput(Ord('C'), 0);
KeybdInput(Ord('C'), KEYEVENTF_KEYUP);
KeybdInput(VK_CONTROL, KEYEVENTF_KEYUP);
SendInput(KeyInputCount, KeyInputs[0], SizeOf(KeyInputs[0]));
end;