情景描述:為什麼打包出來的程序,客戶端連接數據庫總是提示連接不上數據庫。只有當客戶機裝上SQL就可以連接了。
我在包裡包進了DBmsSHRn.dll,ntwdblib.dll,DBMSSOCN.DLL,DBnetlib.dll,libjcc.dll,ntwdblib.DLL,dbmsspxn.dll,Dbnmpntw.dll,pbdwe80.dll,pbmss80.dll,pbrtc80.dll
pbsyc80.dll,pbtra80.dll,pbvm80.dll,可是安裝到客戶端以後卻顯示連不上數據庫
當我給這台機器也裝上SQL Server,就能連接到服務器上的數據庫了,我覺得
可能是有哪個dll文件我沒有打包進去,是這樣嗎,如果是的話,都應該包上哪些文件呢??我用的是sql2000 服務器上數據庫已經打上sp4.0補丁
解決方案:
1.先安裝PBVM
2.Copy
dbnmpntw.dll
dbmssocn.dll
dbnetlib.dll
ntwdblib.dll
到%systemroot%\system32下面
或者先將需要的dll放在一目錄下,
將下面腳本保存為.bat文件,執行該腳本。
rem ---------sqlconfig.bat 腳本
@echo off
:begin
copy *.dll %systemroot%\system32
放在EXE目錄下也可以的
1.需要的動態庫:
(1)PB運行所需DLL:
PBMss80.dll、libjcc.dll,pbvm80.dll,pbdwe80.dll、libjotsclnt.dll、PBRTC80.DLL、PBTRA80.DLL、pbodb80.dll、pbdwo80.dll、pbdwp80.dll
(2)SQL Server客戶端所需驅動DLL:
dbnetlib.dll、dbnmpntw.dll、ntwdblib.DLL、DBMSSOCN.DLL、WINDBVER.EXE
2.配置客戶端網絡:
[HKEY_LOCAL_MacHINE\SOFTWARE\Microsoft\MSSQLServer\ClIEnt\ConnectTo]
"servers"="DBMSSOCN,ServerName,1433"
pbvm80.dll,dbnetlib.dll,dbnmpntw.dll,ntwdblib.DLL
pbmss80.dll,libjcc.dll,pbdwe80.dll
有這些就夠了,其實有第一行的4個就夠了,直接和你的EXE放到同一個目錄就成,不用改注冊表,不用裝客戶端,經過測試在Windows98環境下都可以用。