之前ANSYS使用得好好的,突然就打不开,出现了下面的问题

Waiting for License server to respond...
结果就打不开了

Request name electronics_desktop does not exist in the licensing pool. Cannot connect to license server system.The license server manager (lmgrd) has not been started yet,(注意这一句,不同情况下会报不同的错) the wrong port@host or license file is being used, or the port or hostname in the license file has been changed. Feature electronics_desktop Server name 127.0.0.1 License path 1055@localhost; FlexNet Licensing error -15,10. System Error 10061 "WinSock Connection refused"
之后花了几个小时尝试了各种方法,包括重新破解、删除ansyslmd.ini、重新安装、关闭防火墙、网络重置(读者可以自行尝试这些方法)等等,均无效,最后在吴川斌的博客这里(也可以参考这个页面评论区是否有其他解决方案)注意到了这一句

不要使用家庭版或者教育版的操作系统,可能会造成License服务启动失败
上面的错误代码里面就包含License服务启动失败,于是突发奇想,会不会和 操作系统 有关,刚好昨天安装了一下WSL(虽然昨天也误装了360,前几个小时一直把锅推给了360,毕竟今天也确实遇到了因为360导致的设备管理器摄像头掉驱动的问题),就在启用或关闭Windows功能(这个可以按Win键后搜索)中关闭了这两项

关闭: 适用于Linux的Windows子系统 虚拟机平台
神奇的事情发生了:

竟然就能打开了!
并且启用上面两个功能后又能成功复现这个问题,就可(合)以(理)确(怀)认(疑)是WSL引起的了。所以这是一次非常离谱的解决方式,我也不知道为什么,但是莫名奇妙就成功了,虽然参考意义不大,但是(也许)提供了一种解决思路。
一点补充:
注意到最前面的报错信息中提到,license服务器没有启动,这也是最直接的打不开Ansys的原因(至于服务为什么没有启动,原因就千奇百怪了,这里无法给出所有的解决方案,但下文给出了个人遇到的端口占用问题,可以尝试一下)。事实上,可以在任务管理器(Ctrl+Shift+Esc)中查看是否存在ansyslmd.exe来判断服务是否成功启动:

存在则说明服务成功启动
若不存在ansyslmd.exe,那么可以考虑端口占用,这也是个人遇到的比较频繁的问题。
在终端里(Powershell或cmd)执行这条命令(感兴趣顺便学点Windows命令的话,参考Windows查看端口占用、查看PID对应的进程、并终止进程)(如果是用的一键破解程序,就是1055端口,否则要将1055改为自己设置的端口):
netstat -ano | findstr "1055"结果类似如下(仅作为示例,事实上我这里是正常启动服务的状态):
TCP 127.0.0.1:1051 127.0.0.1:1055 ESTABLISHED 3380 TCP 127.0.0.1:1055 127.0.0.1:1051 ESTABLISHED 11128
假设我这里1055端口被PID为3380和11128的进程所占用(也就是结果中的最后一列,记得替换成自己的),则考虑关闭对应程序:
在任务管理器中搜索3380和11128:


将其结束掉(嫌麻烦也可以直接在终端里用taskkill /f /pid 3380结束,但建议还是先看一下是什么进程占用了端口,以防结束了不该结束的),然后在Ansys的安装目录下找到并打开lmtools.exe(以我的为例,是"C:\Software\AnsysEM\v231\Win64\licensingclient\winx64\lmtools.exe",自行替换),点击Start/Stop/Reread,然后点击Start Server,以启动服务,下面出现Server Start Successful.的通知,成功启动服务。

免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删