金蝶KIS-登陆时出现问题解决(专业版)

金蝶KIS专业版“登录时出现问题,请重新输入”终极解决全过程
(注,本文较长,但如果您能够耐心看完,相信一定会有所收获!本文由昆明苏博泰克计算机有限公司郭永林原创,在金蝶博客以狂啸三声名义发布。解决问题时花了大半天,整理撰写和排版又花了一整个晚上,因此转载收藏时请保留此说明,谢谢。)
目录
金蝶KIS专业版“登录时出现问题,请重新输入”终极解决全过程.1
一、 从客户端PING服务器,检查网络状况 (2)
二、 测试访问服务器共享文件夹 (2)
三、 修改host解析文件 (3)
四、 关闭或配置防火墙 (3)
五、 关闭数据执行保护 (3)
六、 重新安装msdtc组件 (3)
七、 重新分析过程及问题的根本原因 (3)
八、 终极解决办法之一:注册表添加别名法 (8)
金山手机卫士塞班九、 终极解决办法之二:客户端网络工具添加别名法 (9)
十、 终极解决办法之三:ODBC添加数据库访问别名法 (9)
十一、 其他可能遇到的情况 (15)
十二、 总结 (16)
好久没做专业版,现在做了一个。想不到居然遇到了传说的“登录时出现问题,请重新
输入”提示。如下图所示:
我狂晕啊,印象中好像很多人都遇到过,想不到我也会栽到它头上。我装了那么多K3
经过一番配置都没再出过登录不了的问题啊!
由于是所有客户端都这样提示,所以判断肯定服务器配置存在问题,好吧,动手排查:
一、 从客户端PING服务器,检查网络状况
结果如下:
哎呀,不管是用IP地址“192.168.1.200”还是用服务器名称“KIS”,返回值都正常,看
来网络相当正常。
二、 测试访问服务器共享文件夹
从开始――运行中输入“\\192.168.1.200”,结果出错,提示如下:
由于错误,登录失败: 用户帐户限制。可能的原因包括不允许空密码,登录时间限制,或强
制的策略限制。服务器无法登录Windows NT帐户 ‘192.168.1.200\GUEST'。
看来是网络权限配置过于严格,于是采取以下办法处理:
1.右击我的电脑,选择“管理”,在左边依次展开“计算机管理”――“系统工具”――“本地用户和组”――“用户”,检查“GUEST”用户是否是打“X”禁用,如果是,则右击属性,然后取消禁用选项。
2.从“开始”――“运行”,输入“gpedit.msc”,进入到组策略管理界面下,依次展开“计算机配置--->Winsows设置----->安全设置--->本地策略--->用户权利指派”,看看右边有一行:"拒绝从网络访问这台计算机"看它的属性里有没有guest一项,若有,则删除。
3.开始――运行,输入gpedit.msc回车—计算机配置—windows设置—安全设置—本地策略—安全设置—“账户:使用空白密码的本地账户只允许进行控制台登录”--改为“已禁用”。
OK,再测试,试了几台客户端都正常了。我有预感,不会这么简单!果然,到最后两台,功亏一篑啊,不行!!!不过,现在服务器肯定是没有问题了,得查客户端了,根据网友们总结的办法,一步一步排查吧。
三、 修改host解析文件
到C:\WINDOWS\system32\drivers\etc下的HOSTS文件,用记事本打开并添加服务器的记录(这个前提要求服务器的IP得是手工指定的IP啊,要是动态获取的话,今天添加了今天有用,明天IP变了就白添加了):
192.168.1.200    KIS
四、 关闭或配置防火墙
楼宇智能化论文
关闭防火墙包括WINDOWS自带的,或者其他软件防火墙。
如果不关闭的话,也可以通过其他设置,如开放端口。TCP:135、139、445、1069、1090、1433、2967、6985、6988;UDP:137、445、1033、1434、1058、2123、3000。或者采用添加到白名单:设置‐‐详细设置‐‐网站防问规则‐‐白名单‐‐增加192.168.1。200。sdf
OK,其中一台通过以上步骤后也可以了。但另一台死活不行,只能继续其他可能影响的设置修改。
五、 关闭数据执行保护
通过修改BOOT.INI文件,添加或修改参数:NoExecute=AlwaysOff
六、 重新安装msdtc组件
1、删除注册表中的键:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSDTC
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC
HKEY_CLASSES_ROOT\CID
桅杆风
2、运行命令停止MSDTC服务:net stop msdtc
哦!冬夜的灯光
3、运行命令卸载MSDTC服务:msdtc ‐uninstall
4、运行命令重新安装MSDTC服务:msdtc –install
结果依旧,最后这台电脑真的是顽固啊!好吧,网上能够到的都试完了,看来得自已动手分析了。
七、 重新分析过程及问题的根本原因
仔细观察登录时的错误提示,当服务器处输入的是计算机名“KIS”时,如下图:
当服务器处输入的是IP地址“192.168.1.200”时,如下图:
得到的结论是:
输入IP和计算机名,得到的结果不相同。输入IP能够获取账套信息,而输入计算机名则连账套信息均不能获取。但是,既然输入IP已经获取到账套信息,由于我们知道KIS的专业版的账套信息是存放在SQL数据库中的,说明通过IP连接数据库是一切正常的了。
那么,现在我们已经在服务器中输入IP地址来连接数据了,为什么选择了账套后再确定,还是登录不了呢?难道金蝶最终并没有真正使用IP地址来连接数据库,而是又重新使用计算机名来连接了吗?
为了验证我的想法,我在服务器上打开了账套信息数据库“AcctCtl”,到其中的表“t_ad_kdAccount_gl”。呵呵,果然是这样,其中的“FConnectString”字段记录了每个账套的连接字符串,形如:“Provider=SQLOLEDB.1;User ID=KISAdmin;Password=ypbwkfyjhyhgzj;Data Source=KIS;Initial Catalog=KIS_Sample”,根据我们二次开发的经验,金蝶KIS专业版在通过登录时,获取到账套信息后,显然是用账套信息中的连接字符串再进一步的查询数据了。
上述分析也说明了为什么先前一台电脑通过修改HOSTS能够正常访问了:我们在登录
时输入的IP地址仅用于获取账套信息,而之后系统再次使用计算机名访问数据库,所以当
由于某些系统服务未开启或防火墙软件的原因,计算机名不能正确解析时,HOSTS文件就
生效了,帮助系统将计算机解析为IP地址,然后即可正常访问了。
但是,为什么最后一台还是不行呢?金蝶KIS专业版将错误提示封装了,就好像IE浏览
器的“错误友好提示”一样,让人摸不着头脑。那么要尝试有没有更详细的信息了,经
过一番搜索,在C:\WINDOWS\SYSTEM32\KISCOM\中到一个登录的错误日志文档“KISSVRMGR_1001.log”,用记事本打开一看,内容主要形如:
01‐29 09:25:24 [ERROR] AcctMgr::GetAccountList()
Error number: ‐2147217843
Source: Microsoft OLE DB Provider for SQL Server
Desc: 用户 'KISAdmin' 登录失败。
01‐29 09:25:48 [ERROR] AcctMgr::GetSuperPropString()
Error number: ‐2147467259
Source: Microsoft OLE DB Provider for SQL Server
Desc: [DBNETLIB][ConnectionOpen (Connect()).]SQL Server 不存在或拒绝访问。
哎……,还是封装过的,不好判断啊。那么,有没有办法显示更直接的提示呢?
既然用KIS专业版不行,那么咱们用SQL自带的客户端工具来登录试试!!!
客户端一般没有安装SQL,没关系,打开随身携带的绿版SQL管理工具“SQLManager”(也就是企业管理器和查询分析器的独立打包)。使用查询分析器“”来测试登录
渗透率效果。输入IP地址和用户名密码,果然能够正常登录。
再输入计算机名和用户名密码,也同样不出意料,没能够正常登录,弹出了以下错误:
细心的读者您注意到了吗?错误提示中有什么东西和一般不同?
对,就是多了“[Multi‐Protocol]”这个词。

本文发布于:2024-09-23 23:30:51,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/119585.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:登录   服务器   输入   计算机   账套
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议