【发布时间】:2011-11-10 08:23:49
【问题描述】:
哪些 IPC 机制需要 GUI 应用程序? Windows 平台。
Windows 支持以下 IPC 机制:
剪贴板
COM
数据复制
DDE
文件映射
邮槽
管道
RPC
Windows 套接字
【问题讨论】:
哪些 IPC 机制需要 GUI 应用程序? Windows 平台。
Windows 支持以下 IPC 机制:
剪贴板
COM
数据复制
DDE
文件映射
邮槽
管道
RPC
Windows 套接字
【问题讨论】:
取决于您所说的“GUI 应用程序”的含义——从技术上讲,这些都不需要 GUI;尽管有些可能需要在幕后使用隐藏的 HWND/窗口,这反过来可能需要线程来运行消息循环。 (请注意,在 Windows 中,控制台应用程序可以使用任何 win32 API - 因此控制台应用程序和 win32 应用程序之间的唯一真正区别是进程是否在启动时自动分配控制台;否则两个应用程序可以使用相同的 API 集并且要么创建可见窗口。)
据我所知,DDE 确实依赖于窗口之间的消息 - 因此需要消息循环等。但这些窗口不需要可见,因此从用户的角度来看,不需要一个 GUI 应用程序。
COM 既支持基于消息循环的应用程序,也支持更多 unix 或服务器风格的多线程应用程序。
数据复制 - 如果您指的是 WM_COPYDATA,那么它确实需要接收者有一个 HWND(可能是不可见的),而不是发送者。
剪贴板通常与窗口一起使用,但不需要(OpenClipboard 可以采用 NULL hwnd。)
文件映射、邮槽、RPC 和 Windows 套接字不需要消息循环。
【讨论】: