大家能说得详细一些吗?我把PB+SQL7。0写成的EXE文件,怎么在别的没有装SQL7。0的机器,可以运行?

gxbhhp 2002-01-08 12:15:53
我看了好多这样的贴子,可是,好象都是不能解决。

请哪位老兄、姐妹说得详细一些好吗?一定要详细一些。

这段时间我太紧了,还得考试,还得做这玩意儿。快放假了。
...全文
208 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
carryyi 2002-01-10
  • 打赏
  • 举报
回复
不知上面众位兄弟领会笨笨的意思没有。他的意思是PB+SQL7单机版啊?需要SQL7的软件不装SQL7怎么行?单机版就要在单机上装SQL7桌面版,网络版就要在服务器上装SQL7服务器版(客户机只需几个链接文件就可了)。
总之,无论如何都要装SQL7!
pb123 2002-01-10
  • 打赏
  • 举报
回复
学习~
carryyi 2002-01-10
  • 打赏
  • 举报
回复
to:小箭
正是在下,不过我觉得自己还是菜鸟一个,呵呵!
同意甜甜的观点,其实如果搞单机版软件的话,用PB自带的asa数据库有时比sql server效率还要高。我最近就做了这样一个系统,有20多万条记录,开始时担心ASA不胜负荷,于是就用sql server7.0桌面版作DBMS,当然一切没有问题,但发布方面却成了问题(sql server要亲自上门为客户安装),于是抱着试试看的心态改用ASA 7作DBMS,结果大大出乎我意料,无论是查询、还是从服务器通过数据管道更新本地数据,其速度都比sql server快很多。而且,ASA打包分发十分方便,只需把数据引擎和几个链接文件一起打包就可以了。
另外,我想提醒各位用ASA作DBMS的网友,ASA所需的链接文件跟PB6.5自带的sql anywhere 5.0完全不同,大家一定要注意,否则你的软件拿到客户处安装后连不上数据库时可别怪我。^-^
sorrow_arrow 2002-01-10
  • 打赏
  • 举报
回复
我也是现在才看到是单机板,:(
单机板自己还不想状桌面版就想联数据库,没门。 :P
tiantianpb 2002-01-10
  • 打赏
  • 举报
回复
我已经和他说过了,改用mdb或dbf的桌面数据库,做单机版的为什么要选择网络数据库,用了ms sql server又想不装,没有办法
daluobo 2002-01-10
  • 打赏
  • 举报
回复
to:carryyi(yiyi) 
yiyi?就是那个在斑竹的主页上提到过的yiyi吧?久仰大名
elva 2002-01-09
  • 打赏
  • 举报
回复
往前面帖子找找吧。单机版的用sqlanywhere不就可以了?!我没有时间写了。
夸克 2002-01-09
  • 打赏
  • 举报
回复
不安装SQL7客户端,连接SQL7的方法: (**补充**)
只需要将SQL的DBNMPNTW.DLL、NTWDBLIB.DLL
以及PB的PBVM60.DLL、PBDWE60.DLL拷贝到EXE
文件所在目录即可,是不是很简单啊!.

还需加上PBMSS60.dll,以上方面是指用PB直连驱动,对SQL7.0建议用OLE DB连接!!!
daluobo 2002-01-09
  • 打赏
  • 举报
回复
不安装SQL7客户端,连接SQL7的方法:
只需要将SQL的DBNMPNTW.DLL、NTWDBLIB.DLL
以及PB的PBVM60.DLL、PBDWE60.DLL拷贝到EXE
文件所在目录即可,是不是很简单啊!.


试试,从别处看过来的
daluobo 2002-01-09
  • 打赏
  • 举报
回复
老大们。人家说的是sql7.0呀,elva(花语)看清楚了吗?你怎么给人家的是sqlanywhere的,快把sql7.0的给贴上
liyx326 2002-01-09
  • 打赏
  • 举报
回复
只要考几个dll就可以了。
llsyhy 2002-01-09
  • 打赏
  • 举报
回复
把硬盘摔到地上,用锤子敲三下。把最大的捡起来,就行了。
ylg007 2002-01-09
  • 打赏
  • 举报
回复
确实可以。花语说的不错。
Iwant 2002-01-09
  • 打赏
  • 举报
回复
把硬盘换下来装在他上面。
ideage 2002-01-08
  • 打赏
  • 举报
回复
你必须安装SQLServer!否则,你没有办法,你可以把SQLServer带的MSDE安装程序带上,
安完你的程序,在安装MSDE,在你的程序中创建数据库,恢复你以前的数据库即可!
elva 2002-01-08
  • 打赏
  • 举报
回复
呵呵,确实不用,只要sql的两个文件dbeng50.EXE和WOD50T.DLL文件就行了。然后再有几句语句就行了,那么你的程序可以完全独立使用啦!下面的程序你看看啦。不过是做成安装文件后的,sql的那两个文件要一起打包到文件的目录下。另外Pb还要几个dll文件你应该知道的吧。
//获取操作系统的system目录,并保存到ls_location变量
answer=RegistryGet("HKEY_LOCAL_MACHINE\Software\ODBC\ODBCINST.INI\Sybase SQL Anywhere 5.0", "Setup", RegString!, ls_location)
IF answer=-1 THEN
Messagebox("错误","应用程序无法获取Windows的系统目录,系统统将终止运行",Stopsign!)
RETURN
END IF

//判断Sybase SQL Anywhere5.0的驱动程序是否正确安装
ls_driver=ls_location
li_start=pos(Upper (ls_location),"WOD50T.DLL",1)
ls_start=replace(ls_driver,li_start,10,"dbeng50.EXE")

//设置ODBC\ODBCINST.INI\ODBC DRIVERS
answer=RegistrySet("HKEY_LOCAL_MACHINE\Software\ODBC\ODBCINST.INI\ODBCDRIVER","Sybase SQL Anywhere 5.0",RegString!,"Installed")
IF answer=-1 THEN
Messagebox("错误","应用程序无法设置ODBC DRIVERS,系统将终止运行.", StopSign!)
RETURN
END IF

//设置ODBC\ODBCINST.INI
answer1=RegistrySet("HKEY_LOCAL_MACHINE\Software\ODBC\ODBCINST.INI\Sybase SQL Anywhere 5.0","CPTimeout",RegString!,"not pooled")
answer2=RegistrySet("HKEY_LOCAL_MACHINE\Software\ODBC\ODBCINST.INI\Sybase SQL Anywhere 5.0","Driver",RegString!,ls_driver)
answer3=RegistrySet("HKEY_LOCAL_MACHINE\Software\ODBC\ODBCINST.INI\Sybase SQL Anywhere 5.0","Setup",RegString!,ls_driver)
IF answer1=-1 OR answer2=-1 OR answer3=-1 THEN
Messagebox("错误","应用程序无法设置ODBCINST.INI,系统将终止运行",StopSign!)
RETURN
END IF

//设置ODBC DATA SOURCE名称(anysql为数据源名)
answer=RegistrySet("HKEY_LOCAL_MACHINE\Software\ODBC\ODBCINST.INI\ODBC Data Sources","anysql",RegString!,"Sybase SQL Anywhere 5.0")
IF answer=-1 THEN
Messagebox("错误","应用程序无法设置ODBC DATA SOURCE名称,系统将终止运行",StopSign!)
RETURN
END IF
//获取应用程序的安装路径(ybinput为应用程序安装到用户计算机上后在注册表中注册的应用程序名,yibiao.db为应用程序的数据库名,与应用程序在同一目录下,anysql为数据源名)
ansapp=RegistryGet("HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\App Paths\材料管理系统", "path", RegString!, app_path)
IF ansapp=-1 THEN
Messagebox("错误","应用程序无法获取安装路径名,系统将终止运行",StopSign!)
RETURN
ELSE
db_path=app_path+"\Clmis.db"
END IF
//设置ODBC.INI的细节
answer1=RegistrySet("HKEY_CURRENT_USER\software\odbc\odbc.ini\clmis","driver",RegString!,ls_driver)
answer2=RegistrySet("HKEY_CURRENT_USER\software\odbc\odbc.ini\clmis","start",RegString!,ls_start)
answer3=RegistrySet("HKEY_CURRENT_USER\software\odbc\odbc.ini\clmis","autostop",RegString!,"yes")
answer4=RegistrySet("HKEY_CURRENT_USER\software\odbc\odbc.ini\clmis","DataBaseFile",RegString!,db_path)
answer5=RegistrySet("HKEY_CURRENT_USER\software\odbc\odbc.ini\clmis","DataBaseName",RegString!,"Clmis")
IF answer1=-1 OR answer2=-1 OR answer3=-1 OR answer4=-1 OR answer5=-1 THEN
Messagebox("错误","应用程序无法设置ODBC.INI细节,系统将终止运行",StopSign!)
RETURN
END IF
lsb 2002-01-08
  • 打赏
  • 举报
回复
如果想在单机版上运行:在安装程序里要装数据库文件和一部分程序文件和dll文件,更新注册表,启动服务!总之够烦的,还不好管理数据库,如果在工作站上(服务器已装好)那么只需将bin目录下的dll做进安装盘,并更新注册表相关于clien端的健值即可!
kurtzhao 2002-01-08
  • 打赏
  • 举报
回复
至少也要裝SQL ANYWHERE吧
gxbhhp 2002-01-08
  • 打赏
  • 举报
回复
不会吧????我的是单机版,可是,我绝对不相信,非要装SQL SERVER才能运行。
wideken 2002-01-08
  • 打赏
  • 举报
回复
你的问题可能说得不太清楚。不过,如果你得程序如果是单机版,那就一定要装SQL SERVER
否则肯定运行不了,如果你得程序是服务器版本,只需要让你得程序脸上服务器就可以了
加载更多回复(1)

401

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 非技术版
社区管理员
  • 非技术版社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧