Sentinel Hasp Business Studio 无法连接的问题

真是搞不懂,这么大的加密狗厂家做出的管理工具如此脆弱。我说的脆弱并不是加密狗容易被破解,是说管理软件本身问题很多。以 Business Studio 工具为例,常见的几个问题:

  • 电脑更换后数据库无法导出;
  • 经常莫名奇妙地连接不上(报告通信失败,其实分好几种情况)
  • 响应非常的慢。搞不懂啊,你写狗慢也就算了,程序慢没道理啊,本地的数据库。

好了总之,这个管理软件我站在一个软件开发人员的角度去看,那叫一个烂的要死。针对Sentinel Hasp Business Studio无法连接的问题我下面介绍怎么解决,顺便说明在我解决问题的同时,我大致了解了下软件的架构,从开发角度。

错误:upable to connect to Business Studio Server. Communication error.

运行:Vendor Suite Business Studio

从我3年的使用经历看,大致分这么几种情况:

  • 相应的服务没有启动;
  • 数据库连接不上(HASPSRMDATABASE
  • 端口被占用

一 、相应的服务没有启动:

 具体需要多少服务呢,我列下:

 SQL Server (HASPSRMDATABASE)

 SQL Server Browser

 Sentinel HASP Business Studio Server

 Sentinel HASP License Manager

 开始菜单里面输入services.msc ,进去看看这几个服务起来没,没起来是一定进不去,当然了,人家不提示你,哪怕  是他自己的服务。以上服务只要你装了360十有八九会被关掉一两个,所以要注意。

除了上面的东西,去资源管理器中寻找一个hasp_cld.exe的进程,必须至少有一个,没有的话自己去安装目录搜索,然后运行。

二、端口被占用

具体需要哪些端口呢,这个我是查看了下配置文件,见:C:\Program Files\Aladdin\HASP SRM Server\Servers\HASP SRM Server下的hasp_svr.cfg文件,里面2个字段:CHILD_PORT= 444CLIENT_PORT= 443。去"开始"中输入"cmd",然后控制台输入"netstat –ano".

查看以上端口是否存在,正常如下:

Sentinel <wbr>Hasp <wbr>Business <wbr>Studio <wbr>无法连接的问题

记得把最后一列的PID记住。

如果以上端口不存在,说明第一步服务没启动,如果以上服务启动,确保是Hasp的进程启动的。怎么看,进“任务管理器”-》“查看”-》“选择列”-》把PID选上。看下上图443PID是否是HASP的。比如上图显示是3180,对应的应该有下图:

Sentinel <wbr>Hasp <wbr>Business <wbr>Studio <wbr>无法连接的问题
    如果不是,那就被占用了,把占用的进程干掉。

什么情况下可能占用呢,比如IIS,去服务中关掉。

以上确认后,说明Hasp本身没问题了。

三、数据库连接不上

什么数据库呢,这个看hasp_svr.cfg里面:NECT_STRING= dbi:ODBC:driver={SQLServer};server=PC-WORK\HASPSRMDATABASE;uid=sa;pwd=BusStudio2.10;database=SRMServer

好吧,密码、用户名直接明文啊,还加密狗管理程序呢。直接用Sqlserver 2005Microsoft SQL Server Management Studio Express   的去连,参数就用上面的。如果不幸连不上,请听我分解:

1.   先检查名为HASPSRMDATABASE的数据库实例是否开启远程连接,以及端口是否正确。这个用SQL Server Configuration Manager去看,正常应该是:

 Sentinel <wbr>Hasp <wbr>Business <wbr>Studio <wbr>无法连接的问题

如果没开,那么用SQL Server Surface Area Configuration去打开:

Sentinel <wbr>Hasp <wbr>Business <wbr>Studio <wbr>无法连接的问题

如果以上检查正确,还是连不上,那可能是一种情况,那就是你的机器改过机器名。怎么知道呢,去“我的电脑”》“属性”-》“计算机名”看:

Sentinel <wbr>Hasp <wbr>Business <wbr>Studio <wbr>无法连接的问题
    

我就是这种情况。下面看我的经历:我的电脑名称是”PC-WORK”,但我在配置文件中发现却是“3746e7c2a3764df,因为“PC-WORK”是我之后改的。好吧用“PC-WORK”试下。Microsoft SQL Server Management Studio Express    里面用”PC-WORK”试下,果然成功了。但进数据库一看吓一跳,数据库的表“ServiceData”竟然写的还是安装时的地址:

Sentinel <wbr>Hasp <wbr>Business <wbr>Studio <wbr>无法连接的问题

难道这些信息不能写在配置信息里面。于是我去找配置文件,发现HASP SRM Server下面的*.cfg文件里面全部都有数据库连接的参数,竟然不是统一配置的。于是我每个都替换“3746e7c2a3764df”为我新的名字“PC-WORK”。保存后重启服务,发现数据库里面还是没改。于是我又手动把数据库里的表字段全部手动改了下。连接下,终于连接成功了。

作为一个软件研发人员,我非常鄙视这种处理方式:

l  为啥要把“就算机名”这种可变参数作为配置参数,明显用户可能改的啊。实际一般做法:如果连本机,一般用localhost,连远程,那么在连接的提示框中提示用户输入远程计算机的IP地址。HASP的处理意味着安装后计算机名不能变。

 2.   为什么把这个参数不体现在一个*.cfg文件里。至少改的时候改一个就好了嘛。

 3.   最可笑的是配置文件改了数据库的表字段竟然不变。其实表里记录下服务的相对url就好了,前缀都相同的嘛。有几个用软件的人知道用数据库工具,又有几个能猜到要改哪个表啊。

四、注意事项

好了,我总结下注意事项,另外说下怎么转移数据库。

  •  HASP Server安装后就不要改计算机名,切记。改了就得像我一样手动改回来。
  • 安装后的机器尽量不要作为开发之用,也别做娱乐。要不有些服务会关掉或者端口会被占用。如果一定要用,记得我上面提到的服务要开。有些服务尽量别开,比如:IISApache
  •   千万别卸载Sqlserver 或者改名为HASPSRMDATABASE的数据库实例。
  •   通过上面的经历,那么怎么转移数据就很简单了。先备份HASPSRMDATABASE,新机器安装后恢复。然后手动改掉表“ServiceData”里面的URL前缀。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值