通常我们在SBO Addon插件完成之后,往往会写一个安装程序来进行SBO Addon插件安装与卸载。那么SBO是如何管理SBO的Addon插件集的安装呢?
首先安装程序必须具有安装和卸载能力,这些,不管是InstallShield、还是Wise Installer以及VS.Installer Project都具有类似功能,如果我们自己写程序来进行安装,同时也应该保留卸载的能力。
安装程序通常会通过注册表的方式来进行安装注册,而这些安装注册值也是卸载程序所需要搜集的。
使用B1DE定制的SBO Addon安装框架,除了Setup文件会进行产品注册之外,由SBO驱动的安装程序还会在SOFTWARE的
SAP目录下注册一个键值,用以描述SBO Addon的相关资源和属性。
如果您认为除了这之外,SBO的安装就完成了,那就大错特错了。SBO Addon的安装还有几个注册的地方。
对,第一个就是安装的业务数据库对应的sbo-common中的数据表中,就是SARI,这个数据表用于登记所有由本SBO-COMMON数据库管理的业务数据库中所有的Sbo Addon信息。
第二个就是在业务数据库中的数据表:OARI和ARI1中记录SBO Addon的安装属性,用户使用状态。
除了上面这些之外,事实上,SBO还通过另外一个地方来管理Addon安装信息,从而为一台机器连接到多个SBO服务器上的不同的Addon的安装信息提供了妥善的管理方法--这一点却被众多的SBO从业朋友所忽略,也导致很多情况下SBO Addon无法正确的安装和卸载。
就是通过SBO的Client目录下的文件AddOnsLocalRegistration.sbo来进行管理,这是一个Xml文件,记录了在本台机器上的SBO Client连接到了那些SBO Server中,并在每个SBO Server中使用和安装了那些Addon插件,每个插件的安装属性是怎样的。
AddOnsLocalRegistration.sbo中不光记录了Addon的安装与卸载信息,还记录了Addon的服务器属性,从而为SBO Client的多服务器访问提供了周到管理。
正是因为如此,一些安装软件,或者由于安装环境的问题,导致Addon无法正常卸载和安装。通常的解决方法是:
1、无法卸载。通过Windows的安装卸载管理器手工卸载指定的Addon安装,当然了,您还要在SBO的增强模块管理其中移除指定的Addon,再检查Software/SAP/SAP manage下面的指定Addon注册是否已经删除,如果没有删除,手工删除。
一般的过程是:在SBO中移去指定的Addon,重新启动SBO Client,却发现无法卸载对应的SBO Addon。这个时侯,先去Windows应用软件安装卸载管理器中手工卸载指定的Addon,再检查SAP Manage下面的Addon注册是否已经删除,并删除之。
2、无法安装。如果您的SBO环境卸载了对应的SBO Addon后仍然无法安装新的版本的Addon,那么,不管是自动卸载的还是通过上述方式手工卸载,都请检查上述的AddOnsLocalRegistration.sbo文件,是否存在需要安装的SBO Addon的原来版本的信息,并删除之即可继续指定的SBO Addon安装。
本文转自foresun 51CTO博客,原文链接:http://blog.51cto.com/foresun/111248,如需转载请自行联系原作者