金蝶K3客户端无法测试中间层服务器的问题分析与建议方案

发布时间:2011-06-15 08:31:49   来源:文档文库   
字号:

客户端无法测试中间层服务器的问题分析与建议方案

一般出现客户端无法测试中间层服务器的问题,主要现象包括下面的几种情况:

情况一:所有客户端都无法测试中间层组件,并且所有中间层组件都无法测试通过

分析:首先,这一类问题是可以确定是中间层服务器的异常造成的,主要是在服务器上进行相应设置的检查,需要检查下面一些方面

1、检查中间层服务器的DCOM配置中,默认属性页面中的“在此计算机上启用分布式COM”的选项是否勾上,如果没有需要选择上;如果出现该选项勾上后重启服务器该选择又取消选择的现象,应该是服务器中了木马病毒,需要用清除木马的工具检测。

2、服务器是否是windows2003操作系统并且安装了SP1补丁包,如果有请按照附录一中的相关内容进行设置。

3、中间层的COM+服务和DTC服务是否启用,如果没有启动,那么测试也是不通过的,这两个服务在Win2003中是默认没有启动的。

4K3中间层是否之前有安装低版本的K3,而升级到新的版本,但是卸载以前版本的K3时没有清除干净。一般建议在升级K3应用程序时,卸载以前版本的应用程序需要清除注册表信息,执行一下RegClear.exe清除K3注册信息再安装K/3

5、服务器最近有没有更新过windows的补丁,如果有则可能是因为更新microsoft的补丁过程中对COM+的运行产生了影响,需要修复安装K3中间层。建议客户在安装Windows补丁前,先停止所有K3中间层服务(停止运行的包,即停止所有运行的DllHost进程)。

6检查任意客户端是否能够访问中间层服务器的共享目录,如果不能访问,需要检查服务器共享中默认共享比如$IPC是否存在,如果没有需要安装microsoft的相关补丁,还需要检查服务器的安全策略是否设置了“拒绝从网络访问此计算机”的安全策略。

7、检查中间层服务器是否又安装防火墙软件,从而限制了客户端对服务器的访问。

8、在运行窗口中键入“regedit”命令打开注册表编辑器。找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\COM3,然后删除这个目录。

在中间层服务器的“控制面板”-“添加/删除程序”中,选择“添加/删除windows组件”,然后直接点击“下一步”,可以将服务器的windows组件以及COM环境修复一下。

9、客户的中间层服务器是否是通过克隆安装的操作系统,克隆的机器会使DTC协调器的一个GUID唯一标识出现相同的现象,从而导致网络中找到两个同一标识的DTC服务器,这样就可能会给K/3客户端的访问带来问题,如果是这样的情况,可以通过下面的步骤尝试修复:

重新安装msdtc

方法:在命令行运行msdtc –uninstall,然后重启,运行msdtc –install重新安装

10、请检查是否服务器上有感染病毒,还需要检查服务器的事件日志信息,查看是否存在关于COM组件的报错信息。

11、、检查DTC服务的登陆账户,对于2000系统很多都使用localsystem账户,最好使用一个能访问网络资源的账户比如,同名同密码账户,同时winxpwin2003使用networkservice账户,改账户之后重新启动客户端。

12、在中间层服务器上安装MDAC2.8

13、检查中间层服务器是否有安装瑞星、金山、KV等国产杀毒软件,K3应用程序有可能和一些杀毒软件产生冲突,建议客户卸载这些杀毒软件,然后修复安装中间层。

14、建议重新安装服务器的网卡驱动程序和TCP/IP协议。

情况二:只有个别的客户端无法正常进行工作,所有组件都无法测试通过。

分析:出现这样的问题,可以肯定中间层服务器的应用是正常的,只是无法测试通过的客户端的应用环境出现问题,一般需要在相应的客户端检查,可以参照情况一中的检查内容,主要检查项目包括 14679101314这些方面。

还可以检查一下下面的几个方面,

1、 尝试更换登陆客户端的windows用户,域模式下可以用域的系统管理员用户登陆客户端看是否能够正常登陆,工作组模式下面在客户端尝试用服务器的系统管理员用户或其他用户登陆。

2、在K/310.1版本,如果客户端操作系统是WINXP 打了SP2补丁的,而且又执行过K/3安装诊断工具的,可以将下面的注册表键值导入到客户端注册表中。

情况三:客户端只有个别的一些组件无法测试通过,其他组件均正常。

分析:此问题可能的原因一是中间层服务器有安装某一补丁但客户端没有正确安装,原因二是客户端的vbr文件损坏了,需要从其他正常的客户端中拷贝相应组件的vbr文件到有问题的客户端,然后手工用clireg32来注册vbr文件。

附录一:

Win2003系统安装SP1K/3系统不能使用的解决方法

1、 问题背景

微软推出Win2003操作系统以来,其良好的性能及稳定性获得大量用户的好评,但如此庞大的一个系统无可避免会在安全性上有漏洞,微软会及时推出相应的补丁。在Win2003推出2年后,其SP1终于在426推出安装SP1可以有助于保护您的服务器的安全并更好地防御黑客的攻击。SP1 通过提供诸如安全配置向导之类的新安全工具增强了安全基础结构,它有助于确保服务器的基于角色的操作的安全、通过数据执行保护提高纵深防御能力并通过后安装安全更新向导提供安全可靠的第一次引导方案。Windows Server 2003 SP1 协助 IT 专业人员确保其服务器基础结构的安全并为 Windows Server 2003 用户提供增强的可管理性和控制。

2、 问题表现

安装SP1K/3中间层可正常使用,但远程GUI客户端登录界面长时间不出现及K/3HR时提示COM+组件不能激活,查看事件查看器的应用程序日志,有COM+组件错误提示的记录,详细内容如下:

事件类型错误
事件来源: COM+
事件种类: (98)
事件 ID: 4840
日期:  2005-5-10
事件:  15:08:14
用户:  N/A
计算机: EEB-WEB-SRV
描述:
IObjectControl::Activate() 方法失败。对象的 CLSID : {210DBBEA-AE3A-3149-8737-20FF18AC8EDF}

服务器应用程序 ID: {21E08E4B-5141-45BA-A58A-9F254B5D8AE9}
服务器应用程序实例 ID:
{A715A476-F78F-46EF-BCD3-E8B43CD0689A}
服务器应用程序名: Kingdee.ERP.HRMS.Data
错误代码= 0x8004e025 : 由于初始化功能失败,COM+ 激活没有成功。有关详细信息,请检查事件日志。
COM+ 服务内部信息:
文件: d:\srvrtm\com\complus\src\comsvcs\jit\jit.cpp : 459
Comsvcs.dll 文件版本: ENU 2001.12.4720.1830 shp

不通的情况提示的组件名称可能不一样,但都属于COM+组件不能激活的错误类型。

3、 问题解决方法

Win2003在安全机制上比Win2000强大很多,如在DTC上,增加了内置的网络用户处理进程的通信,并增加了一些安全设置选项。在未打SP1前,进入组件服务->我的电脑->MSDTC>安全配置,默认选项如下图:

未打SP1K/3系统使用默认选项即可正常使用。

安装SP1后,DTC的安全机制有了改变,默认选项如下图:

在此默认选项下,若数据库、中间层、WEB端、客户端都在同一台机器上,K/3系统均可正常使用。而当分布实施时,则不能正常使用。这主要是由于Win2003 SP1增加了以下两个安全控制:

1、 事务管理器通信默认情况下要求进行验证。

2、 COM 安全默认不允许远程启动和远程激活。

增加这两个选项的原因是避免独立使用的机器默认情况下不受到恶意的攻击,但对于企业用户来说这两个选项都是必须要修改的,客户可以通过防火墙等工具达到相同的安全目的。

为了解决该问题,需要修改这两个安全控制的的默认选项。

1、 设置事务管理器通信的安全级别为“不要求进行验证”。若所有的机器都在同一域内则设置安全级别为“要求对呼叫方进行验证”K/3系统也可正常使用。当有一台K/3服务器安装了Win2003 SP1,对于操作系统是Win2003的其它K/3数据库服务器、中间层、WEB端、客户端必须要安装SP1及设置该选项(若客户端为Win XP,则必须安装SP2)。

2、 设置COM安全的安全设置。进入组件服务->我的电脑->COM 安全->启动和激活权限的编辑限制,可以看到对于Every One默认是不允许远程启动和远程激活的。我们需要设置其对于Every One允许远程启动和远程激活。如下图:

设置后,K/3系统可正常使用。

本文来源:https://www.2haoxitong.net/k/doc/172006d176eeaeaad1f330e5.html

《金蝶K3客户端无法测试中间层服务器的问题分析与建议方案.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式