文本描述了金蝶K3Cloud客户端在安装过程中,因下载`System.Data.SqlServerCe.dll`文件错误导致的安装失败问题。原因包括防火墙拦截、服务器缺少该文件或相关manifest文件未记录该文件信息。解决方法包括调整防火墙设置、替换deskclient文件夹、修改文件名避免防火墙拦截、拷贝缺失文件到服务器或从正常环境拷贝manifest文件等。针对其他dll文件报错也适用相同方法。
【问题描述】
安装客户端运行到13%时报错:在下载文件 【system.data.sqlserverce.dll】时,发生一些错误。如下图所示。
【原因】
1、出现这种提示的一般都是文件名中带有‘sql’关键字的,大多是被防火墙拦截导致;
2、服务器上的cloud安装目录下\Program Files (x86)\Kingdee\K3Cloud\WebSite\ClientBin\K3CloudClient缺少报错提示中的文件;
3、服务器上的cloud安装目录下\Program Files (x86)\Kingdee\K3Cloud\WebSite\ClientBin\K3CloudClient文件夹中的K3CloudClient.manifest中没有记录报错提示中的文件的相关内容。
【解决方法】
一、针对防火墙拦截这种情况,建议如下:
(1)、如果是个别电脑有问题,可以通过替换deskclient文件夹变通处理;
1、把故障客户端的C:\Program Files (x86)\Kingdee\K3Cloud\DeskClient文件夹重命名为其他名字,比如deskclient0702;
2、然后把正常客户端的deskclient文件夹拷贝粘贴到C:\Program Files (x86)\Kingdee\K3Cloud\文件夹下;
3、打开deskclient文件夹下的Kingdee.BOS.DeskClient.Shell文件,可以打开cloud客户端;
4、以Kingdee.BOS.DeskClient.Shell文件创建快捷方式,把这个快捷方式粘贴到桌面,修改该快捷方式属性里面的目标,改为"C:\Program Files (x86)\Kingdee\K3Cloud\DeskClient\Kingdee.BOS.DeskClient.Shell.exe" http://192.168.21.249/K3Cloud/ClientBin/K3CloudClient/k3cloudclient.manifest即可。
【说明】
上述192.168.21.249请改为您这边的服务器的实际的计算机名或IP地址。
(2)、如果是所有电脑都报错,建议检查防火墙的设置,可以考虑关闭防火墙,或者开放相关的端口号。
(3)、把文件名中的“sql”关键字修改掉;
a、修改掉\Program Files (x86)\Kingdee\K3Cloud\WebSite\ClientBin\K3CloudClient文件夹中的System.Data.SqlServerCe.dll.deploy文件名,比如把sq后面的l去掉,就是改为System.Data.SqServerCe.dll.deploy;
b、同时,要在\K3Cloud\WebSite\ClientBin\K3CloudClient文件夹中的K3CloudClient.manifest文件中,修改System.Data.SqlServerCe.dll.deploy为System.Data.SqServerCe.dll.deploy;跟步骤a里的文件名保持一致,如下图所示。
二、如果检查发现是服务器上的cloud安装目录下\Program Files (x86)\Kingdee\K3Cloud\WebSite\ClientBin\K3CloudClient缺少System.Data.SqlServerCe.dll.deploy文件;
则建议找同版本服务器拷贝该文件,放入到服务器的对应路径上;
如果找不到可拷贝的,则可考虑重装服务器。
三、如果是服务器上的cloud安装目录下\Program Files (x86)\Kingdee\K3Cloud\WebSite\ClientBin\K3CloudClient文件夹中的K3CloudClient.manifest中没有记录System.Data.SqlServerCe.dll.deploy文件的相关内容,可以参照正常环境上的该文件的内容,添加如下内容;
<Item Include="System.Data.SqlServerCe.dll.deploy">
<TargetPath>System.Data.SqlServerCe.dll</TargetPath>
<HashCode>0A14E62CD55613C6CCA6A62DEEB7975509227602</HashCode>
<ModifyDate>2017-04-21T16:29:05.7196822+08:00</ModifyDate>
<IsRegisterSelf>false</IsRegisterSelf>
</Item>
或者直接从正常环境上拷贝替换K3CloudClient.manifest文件。
【说明】
如果报错提示的是其他的dll文件,也可以照上述方法处理。
推荐阅读