delphi将密钥发送到一个不可见的进程中

delphi将密钥发送到一个不可见的进程中,delphi,Delphi,目标是将Q键发送到一个不可见的进程(没有焦点):我知道进程ID 我知道如何将密钥发送到可见应用程序。可以对隐藏的应用程序执行此操作吗?我假设您的不可见进程有一个窗口,该窗口恰好是不可见的(例如,它可能是通过调用SW_HIDE als参数隐藏的),并且您希望使用SendMessage/PostMessage发送击键 我建议尝试以下方法: 使用枚举所有主窗口 对于每个窗口,使用检查它是否属于您的进程 找到进程的主窗口后,立即使用或发送击键 隐藏窗口应该能够接收与可见窗口一样好的密钥,并且大多数应用程

目标是将Q键发送到一个不可见的进程(没有焦点):我知道进程ID


我知道如何将密钥发送到可见应用程序。可以对隐藏的应用程序执行此操作吗?

我假设您的不可见进程有一个窗口,该窗口恰好是不可见的(例如,它可能是通过调用SW_HIDE als参数隐藏的),并且您希望使用SendMessage/PostMessage发送击键

我建议尝试以下方法:

  • 使用枚举所有主窗口
  • 对于每个窗口,使用检查它是否属于您的进程
  • 找到进程的主窗口后,立即使用或发送击键

  • 隐藏窗口应该能够接收与可见窗口一样好的密钥,并且大多数应用程序在作出反应之前可能不会检查密钥是否真的可见,这样它就很有可能工作。

    有点相关:@Andreas:“有点”是一种轻描淡写的说法…:-)如果您有进程id,您可以向任何进程发送击键。进程是否会对其执行操作取决于进程。尽管您可能必须首先使用进程id获取其句柄。@Marjan您如何才能向没有窗口的进程发送击键?@Rudy:问题可能更多。