gpt4 book ai didi

delphi - 如何使用 delphi 7 将 key 发送到另一个应用程序?

转载 作者:行者123 更新时间:2023-12-03 15:04:10 25 4
gpt4 key购买 nike

好吧,我几乎正在尝试将字符串的击键从编辑框发送到事件窗口,然后按回车键。这里有人知道在delphi 7中执行此操作的工作方法吗?

我已经为此搜索了大约一个半小时,但我似乎找不到任何东西,我找到的东西是新版本的 delphi 的以太币,或者它根本不起作用。我尝试过 TTouchKeyboard 但这仅适用于 delphi 10 及更高版本。

最佳答案

我用它来发送文本到一个烦人的弹出式 3G 应用程序,没有界面,这是一个黑客,我们没有留下任何选项。

procedure TForm1.TypeMessage(Msg: string);
var
CapsOn: boolean;
i: integer;
ch: char;
shift: boolean;
key: short;
begin
CapsOn := (GetKeyState( VK_CAPITAL ) and $1) <> 0;

for i:=1 to length(Msg) do
begin
ch := Msg[i];
ch := UpCase(ch);

if ch <> Msg[i] then
begin
if CapsOn then
begin
keybd_event( VK_SHIFT, 0, 0, 0 );
end;
keybd_event( ord(ch), 0, 0, 0 );
keybd_event( ord(ch), 0, KEYEVENTF_KEYUP, 0 );
if CapsOn then
begin
keybd_event( VK_SHIFT, 0, KEYEVENTF_KEYUP, 0 );
end;
end
else
begin
key := VKKeyScan( ch );
// UpperCase
if ((not CapsOn) and (ch>='A') and (ch <= 'Z')) or
((key and $100) > 0) then
begin
keybd_event( VK_SHIFT, 0, 0, 0 );
end;
keybd_event( key, 0, 0, 0 );
keybd_event( key, 0, KEYEVENTF_KEYUP, 0 );
if ((not CapsOn) and (ch>='A') and (ch <= 'Z')) or
((key and $100) > 0) then
begin
keybd_event( VK_SHIFT, 0, KEYEVENTF_KEYUP, 0 );
end;
end;
end;
end;

希望有帮助

更新

编辑为允许其他字符(非字母),即移位数字!“£$ 等。

关于delphi - 如何使用 delphi 7 将 key 发送到另一个应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9673442/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com