【发布时间】:2015-02-02 13:57:23
【问题描述】:
假设您需要编写一个进程或服务(进程 1),它将读取或写入另一个应用程序或进程(进程 2)中的文本框。它是如何完成的? 进程 2 的文本框的名称是否写在某种注册表中,以便我可以从某种系统调用中获取它?
谢谢。
【问题讨论】:
-
您的两个程序是否愿意相互通信以实现这一目标?
-
假设您只有一个 exe 文件。当您运行它时,您会看到一个带有文本框的窗口。您对文本框的名称一无所知。您需要创建另一个程序来识别该特定 exe 运行,并在这种情况下将“foo”(例如)写入该 exe 文件中的文本框。我只有第一个程序的 exe 文件。所以我不能直接和它交流。
-
我说通常他们不会使用文本框作为机制进行通信。相反,程序将使用套接字、共享内存或其他一些通信方法。
-
文本框不是这里的交流方式。只是我认为,当您在 Windows 中运行 exe 时,MFC 对象已在某处注册,您可以以某种方式写入它们。因为那个 exe 是“关闭的”我不知道你怎么能直接改变那个文本框的内容
-
MFC 是一个第三方库,就 Windows 而言。通常,Windows 应用程序不使用 MFC。您似乎还可以互换使用术语 application 和 process。进程是承载应用程序的内核对象。我也不确定我是否了解您想要实现的目标。如果您希望修改特定控件,则必须能够识别该控件。如果您“对控件一无所知”,您将无法识别它。不过,更改随机控件的内容相当简单。