2023/02/23

NameGenerator服务无法启动,错误1064

作者 Leon

今天远程给客户安装部署Smart3D,命名服务一直启动不起来。

一开始我怀疑是登陆账户的权限不够,尝试让他们IT用本地管理员和域管理员登陆,均报错1064,如下图。

我后来又尝试了重装命名服务,甚至重装3D,都没有作用。然后去事件查看器中查找相关记录,看能否有所发现。每次这个服务启动报错的时候,应用程序的日志中都会有四条报错信息,如下图,其中最有价值的信息在S3DNameGenerator这条里。如下图。

从详细信息里看,我能简单理解出来说是8081端口已经被占用了,我一开始以为是原来的NameGenerator的Service没有彻底卸载,还占着那个端口,但如果这么想的话,其实就无解了,因为我已经重启过很多次电脑了。所以我想到要去查一下这个端口到底现在是被谁在占用的。运行CMD,在CMD中输入命令:netstat -nao | findstr “8081”

从图中我们可以看到8081端口目前被占用,再通过”tasklist | findstr 25056“查询出这个进程ID对应的是什么。在任务管理器里找到这个进程,如果这个进程相关的服务或软件可以卸载或修改端口号,那么可以去搞一下。然后S3D的命名服务就能启动了。但是如果这个进程是必须的,也不能修改,那就需要S3D的命名服务去修改端口了。

找到S3D命名服务的安装目录的NameGeneratorService.exe.config文件,如下图,修改里面默认端口号8081,比如我们修改为8083,当然我们在修改为8083时,要先在CMD里查询一下这个端口是否被占用,参考前面的方法。

终于,命名服务启动起来了。但是由于修改了默认的8081端口,那么我们在用Database Wizard创建Site或恢复Site的时候,命名服务器的写法就需要用“机器名:端口号”,如“WINS2019:8083”。

0 0 投票数
文章评分