如何使编写的程序在别的电脑上运行

hyg2010 2011-08-07 02:13:01
我用PB10.0写了个程序,用的是PB10自带的那个ASA数据库(在我自己的电脑上能够正常运行),请问如何把这个程序放到别的没有安装PB10.0的电脑上运行呢?
在没有安装PB的另外一台电脑上,我做了如下努力:

1.把程序和数据库文件(.db)和逻辑文件(.log)放到了另外一台电脑上.并在同一文件夹。
2.用PowerBuilder Runtime Packager生成了一个包,并且在另外一台电脑上安装了。
3.我打算设置ODBC数据源,但却发现没有ASA9的驱动。设置无法进行。
4.对此问题用百度进行了搜索,没找到满意的答案
5.搜索了CSDN相关的贴,但看后仍是一头雾水。


还望各位高手能够多多赐教,使我能够进行下去。不胜感激为盼!
...全文
411 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
hyg2010 2011-08-08
  • 打赏
  • 举报
回复
多谢SKY_4K_PPM的无私帮助,问题在您的指点下已经得到了圆满解决。同时也感谢楼上各位的热心参与,结贴!
路人甲cw 2011-08-08
  • 打赏
  • 举报
回复
收藏,学习
SKY_4K_PPM 2011-08-08
  • 打赏
  • 举报
回复
应该提示是没有该驱动的安装实例。
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\Adaptive Server Anywhere 9.0]
"Driver"="C:\\Program Files\\SQL Anywhere 9\\win32\\dbodbc9.dll"
"Setup"="C:\\Program Files\\SQL Anywhere 9\\win32\\dbodbc9.dll"
[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers]
"Adaptive Server Anywhere 9.0"="Installed"
把上面一段 拷贝到一个文本文档,另存.reg文件,双击就可以了,具体的路径设置成你具体的驱动路径就可以了。

DYFDWX 2011-08-08
  • 打赏
  • 举报
回复
可以的,网上有一大把
wag_enu 2011-08-08
  • 打赏
  • 举报
回复
改用MDB 吧。系统自带访问引挚,方便简单,不用附带其它的驱动。
hyg2010 2011-08-08
  • 打赏
  • 举报
回复
然而我的程序依旧无法在另外的电脑上正常运行,表现为没有连接上数据库,还望各位有着丰富实战经验的前辈继续指点!
hyg2010 2011-08-08
  • 打赏
  • 举报
回复
补充:我已经把dbcon9.dll、dbctrs9.dll、dbeng9.exe、dblgen9.dll、 dbodbc9.dll、dbserv9.dll,这6个文件与数据库文件一起拷贝到了我的程序所在的那个文件夹。同时:用PowerBuilder Runtime Packager生成了一个包,并且在另外一台电脑上安装了。
A啦Dbit 2011-08-08
  • 打赏
  • 举报
回复
安装一下ASA的驱动程序吧,别想那么多了
hyg2010 2011-08-08
  • 打赏
  • 举报
回复
我使用了SKY_4K_PPM大侠给我的代码(已针对自己的具体情况进行了修改),运行后,发现ODBC数据源的用户DNS里面多了一个相应的项,具体来说我的就是"YBKDJ”这项,但无法配置,提示没有安装相关的驱动程序。看来问题仍然没有得到解决。恳请各位大牛能够继续指点于我。
hyg2010 2011-08-07
  • 打赏
  • 举报
回复
非常感谢SKY_4K_PPM大侠给我提供的代码,这真是非常宝贵的答案。谢谢!
wag_enu 2011-08-07
  • 打赏
  • 举报
回复
bind
SKY_4K_PPM 2011-08-07
  • 打赏
  • 举报
回复
1.把数据库文件和.log文件放在一个文件夹 比如说 D:\dbma\tonny.db + tonny.log
2.注册ODBC数据源。你如果你安装了pb和自带的asa数据库的话,在ODBC中注册一个ASA的数据源,数据库的路径映射到 d:\dbma\tonny.db就可以了;如果没有asa驱动的话,找到pb的安装文件下面的SQL Anywhere 9\win32\dbodbc9.dll,做一个注册的窗口,注册实现就可以了,可以参照我下面的代码:
string ls_local_path
string ls_user_path
string ls_local_path1
string ls_user_path1
string ls_local_path2
string ls_user1
string ls_user2
string ls_install
string ls_instrans
string ls_reg_once
ls_reg_once="HKEY_LOCAL_MACHINE\Software\Yt validate T3"
registryset(ls_reg_once,"RUN",regstring!,"Y")
ls_user1="HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ODBC Data Sources"
ls_user2="HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ODBC Data Sources"
ls_local_path ="HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.ini\T3.1-up"
ls_local_path1="HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.ini\T3.1-down"
ls_user_path ="HKEY_CURRENT_USER\Software\ODBC\ODBC.ini\T3.1-up"
ls_user_path1="HKEY_CURRENT_USER\Software\ODBC\ODBC.ini\T3.1-down"
ls_local_path2="HKEY_USERS\S-1-5-21-3992001628-2338598895-2917826331-167080\Software\ODBC\ODBC.INI\ODBC Data Sources"
ls_install ="HKEY_CURRENT_MACHINE\Software\ODBC\ODBCINST.INI\Adaptive Server Anywhere 9.0"
ls_instrans ="HKEY_CURRENT_MACHINE\Software\ODBC\ODBCINST.INI\Adaptive Server Anywhere 9.0 Translator"

registryset(ls_install,"CPTimeout",regstring!,"<not pooled>")
registryset(ls_install,"Drivers",regstring!,gs_path+'dbma\dbodbc9.dll')
registryset(ls_install,"Setup",regstring!,gs_path+'dbma\dbodbc9.dll')
registryset(ls_instrans,"Drivers",regstring!,gs_path+'dbma\dbodbc9.dll')
registryset(ls_instrans,"Setup",regstring!,gs_path+'dbma\dbodbc9.dll')

ls_install ="HKEY_CURRENT_MACHINE\Software\ODBC\ODBCINST.INI\ODBC Drivers"
ls_instrans="HKEY_CURRENT_MACHINE\Software\ODBC\ODBCINST.INI\ODBC Translators"

registryset(ls_install,'Adaptive Server Anywhere 9.0',regstring!,'Installed')
registryset(ls_instrans,'Adaptive Server Anywhere 9.0 Translator',regstring!,'Installed')

registryset(ls_local_path,"DataBaseFile",regstring!,gs_path+'\dbma\T3_up.db')
registryset(ls_local_path,"DataBaseName",regstring!,"T3_up")
registryset(ls_local_path,"Driver",regstring!,gs_path+'\dbma\dbodbc9.dll')
registryset(ls_local_path,"PWD",regstring!,"")
registryset(ls_local_path,"Start",regstring!,"")
registryset(ls_local_path,"UID",regstring!,"")

registryset(ls_user_path,"DataBaseFile",regstring!,gs_path+'\dbma\T3_up.db')
registryset(ls_user_path,"DataBaseName",regstring!,"T3_up")
registryset(ls_user_path,"Driver",regstring!,gs_path+'\dbma\dbodbc9.dll')
registryset(ls_user_path,"PWD",regstring!,"")
registryset(ls_user_path,"Start",regstring!,"")
registryset(ls_user_path,"UID",regstring!,"")

registryset(ls_local_path1,"AutoStop",regstring!,"Yes")
registryset(ls_local_path1,"CommLinks",regstring!,"SharedMemory,TCPIP{host=192.168.1.3}")
registryset(ls_local_path1,"Compress",regstring!,"No")
registryset(ls_local_path1,"Driver",regstring!,gs_path+'\dbma\dbodbc9.dll')
registryset(ls_local_path1,"EngineName",regstring!,"T3.1-DOWN")
registryset(ls_local_path1,"Integrated",regstring!,"No")
//
registryset(ls_user_path1,"AutoStop",regstring!,"Yes")
registryset(ls_user_path1,"CommLinks",regstring!,"SharedMemory,TCPIP{host=192.168.1.3}")
registryset(ls_user_path1,"Compress",regstring!,"No")
registryset(ls_local_path1,"Driver",regstring!,gs_path+'\dbma\dbodbc9.dll')
registryset(ls_user_path1,"EngineName",regstring!,"T3.1-DOWN")
registryset(ls_user_path1,"Integrated",regstring!,"No")

registryset(ls_local_path2,"T3.1-DOWN",regstring!,"Adaptive Server Anywhere 9.0")
registryset(ls_local_path2,"T3.1-UP",regstring!,"Adaptive Server Anywhere 9.0")
registryset(ls_user1,"T3.1-up",regstring!,"Adaptive Server Anywhere 9.0")
registryset(ls_user1,"T3.1-down",regstring!,"Adaptive Server Anywhere 9.0")

752

社区成员

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

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