远程桌面下启动MATLAB时的License Manager Error -103错误

之前使用学校提供的正版lincense,是通过MATLAB 官网注册下载的MATLAB 2017a,远程登录可用打开。后来学校停止购买了,时间紧迫,网上下载了一个standalone的lincense进行破解。

使用的时候正常,可是无法远程登录打开。后来在知乎上找到解决方案。通过对比原来的正版license和盗版的lincese,确实之前的正版lincense每条记录确实带有“TS_OK”字段(“”表示继续接下一行,本条记录尚未完成),如果没有这个属性将禁止从terminal server client启动。方法如下:

1. 打开MATLAB的license对应文件,license*.lic

2. 在每条记录后添加“TS_OK”,在Notepad++下用正则表达式进行替换(记得勾选“正则表达式(E)”的选项)。"ctrl+H":

查找目标:([^\])($)

替换目标:1 TS_OK

3. 之后就可以在远程桌面中正常打开matlab。

经过测试,win10 MATLAB R2017a有效。此方法可以解决远程桌面下启动MATLAB时的License Manager Error -103错误,也能够解决远程桌面下启动modelsim的错误。

---------------------------------------------------------

原作者的方法思路来源:

    1. 远程登录时安装MATLAB的License Manager Error -103错误 :Matlab出现这一出错信息,通常为远程登录所致。究其原因,大概是FLEXlm的一个bug,凡是用到FLEXlm的软件,在打开时都必须有一个本地用户登录,否则远程登录就会出错。
      发现了MATLAB与FLEXlm的关系。
    2. RVCT远程登录时报错的解决办法 :最后参考RVDS自带的文档“Macrovision FLEXlm End User Guide v9.0”里面的介绍,在licence.dat文件中相关位置加上了 TS_OK字段后远程登录就再也没问题了。
      发现了TS_OK字段。
    3. 为什么我的MATLAB激活成功后打开还是激活界面!
      找到了TS_OK字段的具体用法样例。

The FLEXnet End User Guide states the following about the attribute TS_OK:

"FLEXlm detects when a node-locked uncounted license is running under Windows Terminal Server. To run on Terminal Server remote machines, TS_OK must be added to the FEATURE line. Without TS_OK, a user running on a Terminal Server client is denied a license."

ARM does not support the use of the TS_OK attribute.  Therefore, node-locked licenses do not work under Windows Remote Desktop or Terminal Services.

However, floating licenses will work under such an environment.

方法来自知乎,确实解决了一个困扰已久的麻烦。

在远程桌面下启动MATLAB、modelsim的方法