AF_UNIX 相当于 Windows [重复]

2024-03-26

我想知道如何在 Windows 上使用类似于 Unix Domain Socket 的功能。

行为是:一个进程将成为“服务器”并接收来自其他进程的连接,并且它可以保留和使用来自不同进程的连接,就像 TCP 套接字一样。

IP套接字不是一个解决方案,因为它需要选择一个端口,其他应用程序的进程可能需要所选择的端口,并且开放的端口可能在网络中可见。
我不知道命名管道是否可以接收并保留多个客户端,但我没有看到如何区分不同的客户端。并且它没有提供一种使用 select 之类的方法来等待来自多个连接的数据的方法。

一个老问题提到使用命名管道,但它没有解释如何使用命名管道来获得所需的行为。Windows 中的 AF_UNIX https://stackoverflow.com/questions/3872558/af-unix-in-windows
我没有看到如何获取特定客户端的句柄。


Windows 最近(Windows 10 Insider build 17063)实现了对 AF_UNIX 的支持,因此您可以在未来的 Windows 版本中使用它。

然而,并非所有功能都已实现,以下功能不起作用。

  • AF_UNIX 数据报(SOCK_DGRAM)或序列包(SOCK_SEQPACKET)套接字类型。
  • 辅助数据:Linux的unix套接字实现支持传递辅助数据,例如传递文件描述符(SCM_RIGHTS) 或者 通过套接字的凭据(‘SCM_CREDENTIALS’)。没有支持 用于 Windows unix 套接字实现中的辅助数据。
  • 自动绑定功能(有关详细信息,请参阅“sockaddr_un”部分)。
  • socketpair:Winsock 2.0 不支持socketpair 套接字API。

Source: https://blogs.msdn.microsoft.com/commandline/2017/12/19/af_unix-comes-to-windows/ https://blogs.msdn.microsoft.com/commandline/2017/12/19/af_unix-comes-to-windows/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AF_UNIX 相当于 Windows [重复] 的相关文章

  • Windows 操作系统中无法访问的 IP 套接字关闭时间

    这些代码通过用户数据报协议提供发送数据 下面有两个代码 当我使用第一个代码来处理无法访问的 IP 地址时 我得到了三秒的延迟 请查看新结果标题 只需打开新的 C 控制台应用程序并将这些代码粘贴到其中 第一个代码 using System u
  • 想了解 Windows 剪贴板内部结构

    我有兴趣学习 Windows 系统内部结构及其工作原理 我倾向于学习windows上的系统编程 在这种背景下 我很想知道有关 Windows 剪贴板内部功能的一些事情 当我们选择一些文本 图像等并按下时会发生什么 Ctrl C 当我们在不同
  • 让所有进程并行

    我正在尝试使用 C 的 TPL 并行获取所有进程的 CPU 我的代码是 private IDictionary
  • 无法远程连接到Python Socket

    我已经使用 python 套接字和 Tkinter 创建了一个聊天应用程序 它在本地运行得很好 但是客户端无法远程连接到服务器 当我输入我的公共 IP 地址作为主机时 我已经完全端口转发了我的网络并且我知道如何很好地进行端口转发 当我运行在
  • 如何获取Windows 7中的“临时文件夹”?

    在 Windows 7 中 如何以编程方式获取系统临时文件夹 The 获取临时路径 http msdn microsoft com en us library windows desktop aa364992 28v vs 85 29 as
  • 如何在 Windows 中拦截 DNS 查询

    我正在研究如何在 Windows 中拦截 DNS 查询 以一种不需要将 DLL 注入到每个进程中的方式 并且理想情况下能够根据发出查询的进程做出决策 因此简单的 DNS 代理服务器是不够的 从表面上看 DNS 查询所采用的路径如下所示 某些
  • Windows 上 python 的长路径 - os.stat() 对于相对路径失败?

    我想访问 Windows 上的一些长 UNC 路径 我知道我需要使用 UNC 前缀 即 UNC 如果你逃脱了斜线 效果很好 os stat UNC server example com that has long path aaaaaaaa
  • 将命令行参数传递给已运行的应用程序实例

    我想将应用程序新实例的命令行参数传递给已经运行的应用程序 如果存在 到目前为止 我已经尝试了以下方法 程序 cs string Arguments Environment GetCommandLineArgs int iCurrentPro
  • 为什么我们可以将 sockaddr 转换为 sockaddr_in

    我明白为什么强制转换很有用sockaddr to sockaddr in 但我不明白这怎么可能 据我所知 它们的大小相同sockaddr in添加了sin zero使其大小相同 我想知道编译器如何知道从哪里获取信息sockaddr in如果
  • Windows 7 SDK安装失败

    我好像完全无法安装Windows 7 SDK http en wikipedia org wiki Microsoft Windows SDK到我的机器上 我在网上找到的唯一解决方案是进行一系列注册表更改 我已经这样做了 仍然没有成功 这是
  • 开始作业时无法识别功能

    我在模块 sysinfo psm1 中创建了一个函数 Get Uptime 并导入了该模块 C pstools gt get command Module sysinfo CommandType Name Definition Functi
  • 运行时更改进程名称 (C++)

    是否可以在 win32 中运行时更改进程的名称 任务管理器中 进程 下出现的名称 我希望该程序能够更改自己的名称 而不是其他程序的名称 帮助将不胜感激 最好是 C 为了消除任何关于病毒的想法 不 这不是病毒 是的 我知道我在做什么 这是为了
  • “PWC6345:调用 javac 时出错。”使用 Jetty WTP 插件在 Jetty 上部署 JSP 页面时出错

    我正在尝试在 Jetty 上部署 JSP 页面 使用Jetty WTP 插件 http wiki eclipse org Jetty WTP Plugin对于 Eclipse 但我收到以下错误 Jetty 好像找不到javac 我需要在 E
  • 在 socket.on() 的回调上调度操作

    所以基本上我得到了这个套接字 它工作正常 向我发送 新订单 消息 我正在使用 redux 并且我想分派一个操作 然后减速器会得到它并且我的商店将会更新 但这段代码没有做任何事情 socket on new order order gt re
  • 在 C# 中创建 Cron 作业

    我正在用 C 编写一个调度类型应用程序 并允许用户存储他们想要在特定时间运行的任务 现在 我为他们提供了指定运行频率 每日 每周 每月 以及指定时间的选项 然后将其存储在数据库中 我在理解其背后的伪代码时遇到了一些麻烦 并且正在寻找一些有关
  • 如何远程获取系统的网络共享和连接?

    我正在寻找一种远程获取类似于以下控制台应用程序的信息的方法 net use 净份额 网络统计 ano 但是 我需要能够在系统上运行第三方应用程序的情况下执行此操作 这有效地排除了使用 psexec 远程执行命令 因为 psexec 将作为服
  • 如何在java应用程序中检测FIN - tcp标志?

    我在两台计算机之间有持久的 TCP 连接 第二台计算机不受我的控制 第二台计算机可以随时发送FIN标志 并且首先必须关闭当前连接 将FIN标志发送回第二台计算机 我如何知道第二台计算机正在发送 FIN 标志 以及何时必须调用 Java 应用
  • 增加 C++ 程序 CPU 使用率

    我有一个用 C 编写的程序 每秒运行多个 for 循环 而不使用任何会使其因任何原因等待的东西 它始终使用 2 10 的 CPU 有没有什么方法可以强制它使用更多的CPU并进行更多的计算而不使程序变得更复杂 此外 我在 Windows 计算
  • 你能在 MS Windows 上用 Python 将 stdin 作为文件打开吗?

    在 Linux 上 我使用 subbprocess Popen 来运行应用程序 该应用程序的命令行需要输入文件的路径 我了解到我可以将路径 dev stdin 传递到命令行 然后使用 Python 的 subproc stdin write
  • EnumChildWindows 还是 FindWindowEx?

    我可以选择使用 API EnumChildWindows 或 FindWindowEx 中的任何一个 有什么建议哪个 api 更注重性能 FindWindowEx 内部是否使用 EnumChildWindows 来获取特定窗口的句柄 这实际

随机推荐

  • 无法在 Mac 上的 Genymotion 模拟器上运行 telnet 命令

    我在 Mac OS X Yosemite 上运行 Genymotion 2 3 1 当我在 Win 7 上运行 Genymotion 时 我可以远程登录到模拟器并运行 geo fix 等命令来设置位置 但是 在 Yosemite 上 当我远
  • 在 Excel 中单击时,超链接从 # 更改为 %20-%20 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我在 Excel 2013 工作表中有一个链接到内部网站的超链接 当我右键单击并选择 编辑超链接 时 我在地址栏中看到以下内容 这是正确的
  • 饥饿与upgrade_lock

    我正在尝试使用Boostupgrade lock using 这个例子 https stackoverflow com questions 989795 example for boost shared mutex multiple rea
  • 在 Angular 2 中使用 Sass

    我正在尝试设置Sass in my Angular 2项目 基本上据我了解 有两种方法可以创建 Angular 2 项目 1 使用angular cli https github com angular angular cli https
  • 用 pandas 计算指数移动平均线

    我尝试用 pandas 计算 ema 但结果不好 我尝试了两种技术来计算 第一个技术是panda的函数ewn window 100 c 2 float window 1 df 100ema df close ewm com c mean 但
  • 如何制作Maven项目的“胖罐子”? [复制]

    这个问题在这里已经有答案了 使用 IntelliJ 我刚刚创建了一个新的 Maven 项目并将以下内容添加到 pom 文件中http undertow io downloads html http undertow io downloads
  • 我应该在 FluentValidation 中创建一个新的集合类型吗?

    我试图找到 FluentValidation 中是否有可用的方法 允许在根级别验证集合的验证器 例如如下所示 验证器可用于CustomerValidator为一堂课Customer 使用 FluentValidation public cl
  • 使用配置文件并行执行 FirefoxDriver 测试共享相同的配置文件副本

    一段时间以来 我们一直在使用 FirefoxDriver 执行一组基于 WebDriver 2 25 0 的自动化测试 测试由基于 Maven 3 0 的构建及其 FailSafe 插件并行执行 四核机器上每个核心 2 个线程 每个测试都有
  • 获取标签内的所有节点

    我有这样的代码 div Lorem ipsum dolor sit amet p This is a paragraph p br span This is a span span Lorem ipsum dolor sit amet di
  • 当应用程序处于信息亭模式时拨打电话

    我们正在开发一款 Android 应用程序 旨在取代默认的 Android 拨号器并自行处理设备中正在进行的所有呼叫 到目前为止 该应用程序按预期工作 我们可以通过启动来处理来电和拨打电话ACTION CALL意图 但是 此应用程序旨在通过
  • JQuery 从提交函数内部提交表单

    以下是我想在 JQuery 脚本中执行的操作 在下面的提交函数 第 4 个 中 我想确定表单是否有文件输入并使用 ajax 提交 或者只是不使用 ajax 的常规表单提交 换句话说 如果表单已上传 则进行常规提交 我在下面的提交功能中写了这
  • 从 JSON 对象中删除键值对

    我下面有这个 JSON 对象 XXX 2 YYY 3 ZZZ 4 XXX 5 YYY 6 ZZZ 7 XXX 1 YYY 2 ZZZ 3 我想从 json 对象中删除 YYY 键值 以便新的 json 对象如下所示 XXX 2 ZZZ 4
  • 如何解决违反迪米特法则的问题?

    我和一位同事为我们的客户设计了一个系统 我们认为我们创建了一个漂亮简洁的设计 但我对我们引入的一些耦合遇到了问题 我可以尝试创建一个示例设计 其中包含与我们的设计相同的问题 但如果您原谅我 我将创建我们设计的摘录来支持该问题 我们正在开发一
  • 如何在 React 中触发函数之前等待 setState 完成?

    这是我的情况 在 this handleFormSubmit 上我正在执行 this setState 在 this handleFormSubmit 内部 我调用 this findRoutes 这取决于 this setState 的成
  • 找不到使用 System.Web.UI.HtmlControls 命名空间

    我尝试了各种使用方法System Web UI HtmlControls 但我没有找到任何参考 我如何使用该命名空间 转到项目的参考文献并确保 System Web 位于其中 如果没有 右键单击 添加引用 NET 然后添加 System W
  • Sublime Text 2 插件可按字母顺序对函数进行排序

    我正在我的应用程序中构建许多函数 现在我想按字母顺序排列它们 Sublime Text 2 中是否有任何函数可以自动执行此操作 应该改变这些 public function login 1 public function about pub
  • Jersey 2:过滤器和@Context注入

    我有以下问题 ContainerRequestFilter 是一个单例 但是阅读以下内容 Jaxrs 2 0 Oracle 规范 http download oracle com otn pub jcp jaxrs 2 0 fr eval
  • 使用 XDocument 加载编码为 UTF 16 的 xml

    我正在尝试使用 XDocument 方法读取 xml 文档 但当 xml 有时我收到错误 当我手动删除编码时 它工作得很好 我收到错误 没有 Unicode 字节顺序标记 无法切换到 Unicode 我尝试搜索并找到了这里 gt 为什么包含
  • 更新ImageField时如何删除旧图像?

    我正在使用 Django 创建一个库存照片网站 我的模型中有一个 ImageField 问题是当用户更新图像字段时 原始图像文件不会从硬盘中删除 更新后如何删除旧图像 Use Django 清理 https github com un1t
  • AF_UNIX 相当于 Windows [重复]

    这个问题在这里已经有答案了 我想知道如何在 Windows 上使用类似于 Unix Domain Socket 的功能 行为是 一个进程将成为 服务器 并接收来自其他进程的连接 并且它可以保留和使用来自不同进程的连接 就像 TCP 套接字一