您的位置:网站首页 > Ansys教程

Vista系统中启动Flexlm的方法

时间:2008-09-15 12:45:03 来源:
最近买了Dell电脑,预装了Vista系统,据说会有好多软件不能运行,我就仔细试验了一下,发现这根本就是一个谎言!

我装了将近40个GB的软件——够多了吧,未发现一个软件不能运行,当然,游戏我是不喜欢的,这方面就不好发表意见了。

在这些软件中,尤其是CAD/CAE/CAM软件,大多是通过Flexlm许可证管理的,一开始还真的都不能运行,但在安装过程中我就坚信,一定没有问题,所以,仍然一个接一个先装上再说——够牛的吧。因为实在没有理由,那么多各式各样的新老中外软件都能运行的呀,更何况微软的所谓开发新一代操作系统本身就是一个大谎言,你想想,98/Me/2000/XP/2003,不都是换汤不换药吗?无非是搞几个漂亮的外观,字体等等而已,其核心不可能变的!因此,所谓多少开发人员巨额的工作量,我认为甚至比不上将98系统原代码重新输一遍的工作量。

那么,为什么大家都说Vista系统无法启动Flexlm呢?网上搜索了半天也毫无相关的解决方案!一开始,我就认为是程序运行方式的问题,例如权限、用户账户控制、兼容性、防火墙、杀毒软件监控等等,但是,试了半天不能解决,后来一想,2003系统,也有权限、兼容性等等,XP也有防火墙、也安装了防病毒软件,不是都可以正常启动Flexlm吗?这就证明不是这些造成的问题,只有UAC用户账户控制是Vista的新玩艺,把它停了,也不能解决问题,因此也不是UAC的问题了。

看来是Flexlm本身的问题,其启动管理器的启动lmgrd方式可能跟Vista有一点不兼容,尤其可能是不能自动以管理员方式运行命令行,因此,我就想到了直接用命令行方式来启动lmgrd,结果真的就成功了,所有的依赖Flexlm的CAX软件都可以正常运行了!

下面,以Ansys和Adams为例进行说明:

1、在命令行窗口中,进入相关的目录,运行:
lmgrd -help
就会显示lmgrd的命令行参数,其中
-c 用于指定许可文件的位置和文件名
-l 用于指定log文件的位置和文件名
-x 用于退出lmgrd,或者隐藏运行lmgrd成功后的窗口

2、根据上述参数,给出我编写的Flexlm_Start.bat文件如下:
@echo off
cd c:Program FilesANSYS IncShared FilesLicensingintel
lmgrd.exe -c "C:Program FilesANSYS IncShared FilesLicensinglicense.dat" -l "C:Program FilesANSYS IncShared FilesLicensingdebug.log" -x lmdown
cd C:MSC.SoftwareMSC.Licensing10.8
lmgrd.exe -c C:MSC.SoftwareMSC.Licensing10.8license.dat -l C:MSC.SoftwareMSC.Licensing10.8debug.log -x lmdown
echo on

注意:
上述文件一共6行,每种软件有2行,第一行进入相关目录,第二行加开关运行lmgrd,这一行很长很长的,而且,由于Ansys的文件名中含有空格,要加引号引起来,而Adams的不加引号也行。

运行这个BAT文件就可以了!

3、开机自动运行
把该BAT文件拖到启动文件夹,这样开机就可启动一系列的许可证管理器了。

4、另外一种运行方式

@echo off
c:windowssystem32cmd /c ""c:Program FilesANSYS IncShared FilesLicensingintellmgrd.exe" -c "C:Program FilesANSYS IncShared FilesLicensinglicense.dat" -l "C:Program FilesANSYS IncShared FilesLicensingdebug.log" -x lmdown"
c:windowssystem32cmd /c ""C:MSC.SoftwareMSC.Licensing10.8lmgrd.exe" -c "C:MSC.SoftwareMSC.Licensing10.8license.dat" -l "C:MSC.SoftwareMSC.Licensing10.8debug.log" -x lmdown"
echo on

这种方式好象可以少点几下“允许”确认。

 

 


但值得注意的是ansys11.0能在vista下安装,但用起来会乱码,且显示不正常,要在vista下用ansys,看来还得期待ansys12.0