我用Delphi6+Sql server2000作了一个程序,使用的是一台指定服务器上的数据库,我用*.udl进行的连接。
Delphi中我用了TADOConnection、TADOTable、TADOQuery控件,在打包时,我将Blw32.dll、Idapi32.dll、Idapi32.cfg、Fareast.btl、Usa.bll、Idasci32.dll、idbat32.dll、iddao32.dll、iddr32.dll、idodbc32.dll、idqbe32.dll、Idr20009.dll、idsql32.dll、usa.btl都打进去了。制作好安装文件后,在有
的计算机上安装后运行正常(Win98和Win2000都有,这些机器上没有安装过Delphi和SQL Server),但有的计算机上安装后运行不正常,在程序加载时,提示错误对话框"[DBNMPNTW]ConnectionOpen(CreateFile())"。
   希望得到高手指点,请发表评论或回信给我。  多谢!!
 来信请回:[email protected]

解决方案 »

  1.   

    没有连接上数据库.在服务器上新建一个用户,客户端用此用户名登录windows网络。try it!
      

  2.   

    这个你看看吧SQLServer的程序发布 很多朋友在编写完成基于SQLServer的程序后对发布程序感到头疼,因为仅仅发布应用程序和BDE是不够的,必须要安装SQLServer Client软件,难道还要提供一张SQLServer的光盘?下面jojo为大家介绍一个解决之道: 
    1.准备一份Install Shield Express,最好是2.01以上的版本,在Delphi的安装盘上有一个专用版本也可以用,按照制作一般程序安装盘的方法建立安装程序,必须安装BDE和SQL LINKS. 
    2.在你的Windows\System下面找到以下几个文件(当然你的机器必须已经安装SQLServer): 
    Dbmssocn.dll TCP/IP 支持文件 
    Dbmsspxn.dll IPX 支持文件 
    Dbnmpntw.dll 命名管道支持文件 
    Ntwdblib.dll SQLServer核心文件(这个文件最重要) 
    3.在Fpecify Components and Files的Groups and Files中,将以上几个文件加入到Program Files中去.当然你也可以建立一个组,将这些文件拷贝到System目录中,不过我个人倾向于拷贝到安装目录,以便反安装的时候可以彻底的删除它们. 
    4.如果你的程序运行比较简单(比如只有一个网段)现在你已经大功告成了,但不幸的是大多数人的网络环境没有如此简单,下面还要修改注册表: 
    修改键值: 
    其中DSQUERY设定默认的连接协议,这里设定的是IPX,128.1.1.1则是专有的连接,这里是设定一个连接名称为128.1.1的连接,使用TCP/IP协议,IP地址为128.1.1.1,你也可以把键名改成其他名称,只要与你的别名中SERVER NAME一项相同即可. 
    至此,你的安装盘已经做成,现在只需要Building一下就可以了. 
      

  3.   

    我开始也不行,用WISE打包一切搞定。
      

  4.   

    1.先安装MDAC,最好是Ado2.1以上的
    2.安装SQLServer客户端或者发布Dbmssocn.dll,Dbmsspxn.dll,Dbnmpntw.dll,Ntwdblib.dll到应用程序目录或系统目录
      

  5.   

    我每次都装mdac 2。7,应该没问题,用的是wise打包很方便!另外确保你的connection是关着的哦!不然麻烦大了!
      

  6.   

    我用Wise打了包,但仍然不行。
    我检查了一下,现在的问题是:我直接双击程序连接时所使用的*.udl文件,然后选择
    “测试连接”按钮时,
    弹出对话框“初始化提供者中发生错误,测试连接失败,客户端无法建立连接”。
    看来,不是程序的问题,而是连接出现错误。而服务器端我无权进行设置,不知在客户端
    怎样设置才能解决以上问题?请各位指教!Thanks!
      

  7.   

    你先用ODBC连接一下看行不行,ODBC连接SQL都不行,则是你的OS问题
      

  8.   

    吐血推荐 mdac, 在客户端安装后肯定没有问题!
      

  9.   

    1.先安装MDAC,最好是Ado2.1以上的
    2.安装SQLServer客户端或者发布Dbmssocn.dll,Dbmsspxn.dll,Dbnmpntw.dll,Ntwdblib.dll到应用程序目录或系统目录不能解决吗,安装SQLServer客户端也不行吗?是不是连接设置的有问题,连接数据库实例是否正确等等。
      

  10.   

    谢谢大家的指点,我安装了MDAC后,问题就解决了。
    我要去结贴了。Thank you .!