4

再会,

我有以下问题:我有一个将文本文件写入磁盘的 exe 应用程序,但该 exe 源不可用。客户要求,当用户按下小键盘 5 时,会弹出一个新窗口,并对某些文件进行一些操作。

问题是,小键盘 5 + 新应用程序弹出窗口必须仅在应用程序运行并具有焦点时工作(他们使用小键盘 5 进行其他操作)。

我想过这个

  1. 创建一个带有执行所需操作的表单和按钮的 dll
  2. 在进程中注入dll

但我很难理解是否有办法在 dll 中创建“按键循环”。

请注意,我是 C++ 和表单的初学者,但我只需要可行性检查和方向。

是否可以在注入的 dll 中创建一个等待按键的窗口应用程序?有什么简单的例子吗?像疯子一样使用谷歌我无法找到对此的参考,所以我认为我对正确的条款有疑问。

我的主要问题是 dllmain 显然是一次性例程,我不明白如何创建“事件循环”。

感谢您提供的任何信息。

4

1 回答 1

1

如果您成功地在 traget 进程中注入了您的 DLL,请使用 DllMain 中的 _beginthread API 来启动一个新线程,然后在该线程中您可以创建一个对话框并以通常的方式进行消息循环。

于 2013-10-22T16:41:11.177 回答