连接Sql server时发生错误,怪事!(50分)

  • 主题发起人 主题发起人 jobsxy
  • 开始时间 开始时间
J

jobsxy

Unregistered / Unconfirmed
GUEST, unregistred user!
以前用ADO连接ACESS一点问题都没有,无论在我本机上还是在客户的机器上都跑得很好。
现在接到一单要用到SQL SERVER,开发过程也很顺利。可程序分发到客户的机器上就出问题了。
连接Sql server时报错“[DBNMPNTW]ConnectionOpen(CreateFile())”,后来我在ODBC建了
一个连接,并测试连接成功,再执行程序,就不会出现以上错误了,即使把ODBC那个连接删了
程序也不会出错。似乎问题得到了解决,可过了几天客户重新装系统,我那个程序又连接不上
SQL SERVER,然后我又照前面所说的办法处理了一遍,好象又正常了。但这样下去总不是办法,
应该如何彻底解决呢?

ADO连接时并没有通过ODBC。
 
我也碰到过这样的问题。可能是局网内的机器太多了,共享的也多的原因。

最后我在程序里登录服务器的时候不用服务器的名字,用IP地址,成功率高了很多。
要是还不行,叫用户用浏览器去访问一下服务器,再登陆就好了。
 
操作系统的问题,我也遇见过这种问题,在WIN98下经常出现,而在Win2000,WinXp下就没有。
还有就是联接服务器时不要使用计算机名,最好用IP地址
 
你检查一下服务器网络配置。
 
应该先在程序中设置好 TADOConnection.connectionstring的连接属性
 
呵呵,我确实是用的IP,并没有用服务器名。
我问过一些玩VB的,他们开发的程序也存在这种问题,他们给客户的招就是让客户在使用前
先用网上领居查找到服务器,而且W2000下也有这问题,很是奇怪。
但为什么ODBC,或者SQL SERVER的客户端不存在此问题呢?
 
呵呵,想不到大家的招都差不多 :-(
这事要真查起来,还真不明白。
 
如果使用 name pipe 连接方式,需要可信连接.
在服务器端的服务器网络实用工具改为只启用
tcp/ip试试.
 
检查一下服务器上guest的权限
 
客户端没安装SQL的几个DLL驱动文件。
 
如果没有权限或几个相关文件,那应该是根本就没法连上去啊,可我只要用别的方式先通一
下,就没什么问题了。
或许xeen说的原因,只是数据库设置不属于我这个工程范围,不敢去动。
 
先用ODBC引一下,用ODBC连时将NAME PIPE 改为TCP/IP,测试通过后就可以了,原因不详.
 
在连接字符串中加入这样一句:Network Address=<服务器的IP地址>。
 
我也是同样的问题,不过我是用ip地址不通,该成服务器名字就好了。奇怪。。。
 
以上说的我想都不对(有点大胆吧?!好怕),你应该试试将客户的机器上的MDAC升级到最新的
版本(2.7 or above), 就不会有问题了,当然,你将IP地址改为主机名也是可以.
 
2.7的那里下载,我现在用的是2.6
不过这样的话客户机也要安装了(win98也要)不好
 
呵呵,wellknow你的大胆是因为你已经胸有成竹了。
谢了,只要升了MDAC2。7就没问题了。
 
哇,这样呀,谢谢 wellknow 了,我也学了一招。
 
用MIDAS开发层系统吧,这样更方便
 
后退
顶部