Skip to main content

开启网络共享后无法被发现怎么办?

问题

安装 Windows 10/11 的电脑通过网络共享文件,其他电脑(经常)无法在网络中发现此电脑。

解决过程

通过搜索引擎,我首先找到了负责此功能的服务:Function Discovery Resource Publication (FDResPub)。

继续搜索,找到一篇文章,按其说明将此服务重启后,其他电脑果然就能发现此电脑了。但是,当电脑重启后,此问题依然存在。于是文章里又给出了写脚本一键重启此服务或者定时重启此服务的方法。

但是这两种方法显然并没有找到问题的根源:为什么时而生效时而不生效?为什么需要重启此服务才能生效?有编程经验的人可能会感觉到,这可能是一个异步初始化的时序问题。

顺着这个方向继续搜索,在这个帖子中我终于找到了答案:FDResPub 服务必须在 Workstation 服务之后启动。

解决方法

以管理员身份运行命令提示符,执行以下命令:

sc config fdrespub depend= RpcSs/http/fdphost/LanmanWorkstation

此命令将 FDResPub 服务设置为依赖于 Workstation 服务(LanmanWorkstation),以保证其在 Workstation 服务启动后再启动。执行此命令后,重启电脑,问题解决。