c - 用 C 语言向另一个程序发送文本命令

标签 c command

如果我想在 Windows 操作系统中创建一个可以向另一个程序(比如说 notepad.exe)发送键盘命令的 C 程序,我应该学习什么?

最佳答案

C11 标准(位于文档中:读取 n1570 )不知道键盘或其他正在运行的程序(除非能够通过一些未指定 command processor 和来自 system <stdlib.h> function 来运行它们)。

(在纯标准 C11 中,没有其他程序与您的程序一起运行:C 标准没有提及 processes,这是操作系统特定的概念)

否则,您需要一些能够执行 operating system 操作的 system call 特定库(或函数,或 inter-process communication )。对于 Linux,首先读取 Advanced Linux Programming。您可能需要了解有关 display server 实现 window system 的更多信息。

我建议花几天时间阅读 Operating Systems : Three Easy Pieces 以获得有关操作系统的良好概述。

你提到了一些notepad.exe,所以你的操作系统可能是一些Windows。我从未使用过 Windows,但通过 Google 找到了有关 Interprocess Communication on Windows 的这一章。

您可以考虑使用一些跨平台库,例如 libsdlGTK (或 Qt ,如果您接受 C++ 编码)。

关于c - 用 C 语言向另一个程序发送文本命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43852836/

相关文章:

linux - 如何在Linux中获取倒数第二个文件夹的名称

rust - 有条件地将命令的标准输出转换为字符串的时间不够长

c++ - 如何使用Windows api中的参数执行线程?

c - 在用户输入旁边打印输出

c - 如何检查输入是否为 C 中的数字?

wpf - 在 "old"DataContext 中调用 RelayCommand

python - 在Django中制作自定义管理命令时 "_private.py"文件的用途是什么?

vim - 为什么 "d1j"在 vi​​m 中删除两行?

c - 错误:Array subscript is not an integer

c - 收到神秘信号的应用程序