加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

winapi – 套接字与Windows上本地IPC的命名管道?

发布时间:2020-12-13 20:54:11 所属栏目:Windows 来源:网络整理
导读:是否有任何理由支持本地IPC(使用win-api),有效性wize,resource-wize或其他方式的套接字的命名管道,因为它们的行为非常相似(并且可能由类似的接口进行抽象)在一个可能已经使用套接字用于网络目的的应用程序? 我至少可以命名寻址问题:套接字的端口号与管
是否有任何理由支持本地IPC(使用win-api),有效性wize,resource-wize或其他方式的套接字的命名管道,因为它们的行为非常相似(并且可能由类似的接口进行抽象)在一个可能已经使用套接字用于网络目的的应用程序?

我至少可以命名寻址问题:套接字的端口号与管道的文件名。另外,命名管道(AFAIK)不会警告防火墙(块/解除阻塞对话框),尽管被阻止的应用程序仍然可以通过套接字本地进行通信。还有什么要考虑的?

在使用套接字的情况下,在本地使用套接字时是否有建议使用的winsock设置/标志?

一些微妙的区别:

如果您没有正常的适配器,则套接字将不适用于本地IPC。 PC没有功能的适配器有多常见?那么当有人试图向笔记型电脑上的一个客户展示我们的软件时,我没有插入网络或电源(因此操作系统禁用网卡以节省电力),而且无线适配器已被禁用(因为笔记本电脑用户没有使用无线)。您可以通过安装一个环回适配器来解决这个问题,但这并不理想。

防火墙软件可能会导致建立TCP / IP连接的问题。这不是本地IPC的问题,但我不相信。 Named pipes can have firewalls too.

由于创建命名管道所需的特权或创建命名管道的新实例,您可能会遇到问题。例如,我使用相同的命名管道运行多个服务器(可能不是一个好主意,但这是测试),而在CreateNamedPipe中有一些失败,因为创建管道的第一个服务器以管理员模式运行(因为它是从Visual Studio以管理员模式),而其余的则是从具有正常UAC级别的命令行启动的。

虽然鲁本斯提到的文章主要是关于网络上的IPC,但它确实表明“本地命名管道以内核模式运行并且速度非常快”。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读