社区
PowerBuilder
帖子详情
关于程序发布的问题!(需要哪些库文件?)
LynnWang
2002-12-03 07:11:17
CSDN上提过此类问题的人不少,几乎可成一新论坛了。以前有PB6.5+SQLServer7的,有PB7+SQLAnwhere5.0的,有PB8+SqlServer2k的,有PB8+Oracle8i的,等等,请问各位有没有关于这方面的详细资料?
...全文
48
9
打赏
收藏
关于程序发布的问题!(需要哪些库文件?)
CSDN上提过此类问题的人不少,几乎可成一新论坛了。以前有PB6.5+SQLServer7的,有PB7+SQLAnwhere5.0的,有PB8+SqlServer2k的,有PB8+Oracle8i的,等等,请问各位有没有关于这方面的详细资料?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
godblood
2002-12-05
打赏
举报
回复
上面是pb 6.5 + asa单机版程序发布的介绍
建议使用install shield 制作安装程序
godblood
2002-12-05
打赏
举报
回复
单机版所需的程序文件
pb所需要的文件(我用的pb6.0你吧版本号改一下)
pbvm60.dll(必须要的pb的虚拟平台)
pbodb60.dll(如果用odbc这个必须要,如果直连用下面的)
pbmssql60.dll(直连ms sql数据库用,其他的类似)
pbdwe60.dll (如果程序中有数据窗口则必须要)
asa(60版本)所需要的文件
dbcon6.dll
dbctrs5.dll
dbeng6.exe
dblgen6.dll
dbodbc6.dll
dbport6.dll
dbodtr6.dll
dbserv6.dll
注册表(使用odbc的情况)
1 做安装程序的时候修改注册表数据源配置
2 程序中获取当前的文件路径(主要是.db文件和dbodbc6.dll,dbeng6.exe那个文件的路径)进行odbc配置
具体的注册表配置类似如下(用户数据源):
[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\YYHIS]
"AutoStop"="YES"
"DatabaseFile"="D:\yyhis\jkc\DataBase\yyhis.db" //数据库文件
"Debug"="NO"
"DisableMultiRowFetch"="NO"
"Driver"="D:\yyhis\ASA\dbodbc6.dll" //odbc驱动
"Integrated"="NO"
"PWD"="sql"
"UID"="dba"
"Start"="D:\yyhis\ASA\dbeng6.exe -c 8m -Q" //隐藏启动
如果还要能让别人通过控制面板中的数据源来修改这个数据源
你还需要修改注册表,首先要注册该数据库odbc driver(这里是dbodbc.dll)类似于如下(注册为asa):
[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\asa]
"driver"="D:\yyhis\ASA\dbodbc6.dll"
"setup"="D:\yyhis\ASA\dbodbc6.dll"
其次你要登记数据源
[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ODBC Data Sources]
"yyhis"="asa"//asa就是上面注册的
这样子别人就可以通过控制面板中的数据源管理来修改
另外如果不是登记用户数据源改变一下YYHIS的位置(在第一个注册表配置中把HKEY_CURRENT_USER替换为HKEY_LOCAL_MACHINE)
还有你要吧你所用到的其它文件(比方系统的和自己写的一些动态连接库)
如果不在应用程序同一目录中,那么你就要为该应用app.exe指明一些路径
类似于下:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\app.exe]
@="d:\PROGRA~1\card\app.exe"
"path"="d:\program files\card\dll;d:\\PROGRA~1\card\asa"
ps:dll目录下我存放了自己写的一些动态连接库,asa目录下存放了数据库要用到的一些文件
banalman
2002-12-05
打赏
举报
回复
如何发布独立的POWERBUILDER应用
摘要:本文介绍了发布独立的POWERBUILDER应用所需要的驱动程序以及相关设置,特别介绍使用Powersoft的本地数据库产品SQL Anywhere作为数据源的应用如何将其包含在发行当中。
一.前言
PowerBuilder(PB)是SYBASE 公司的下属公司Powersoft公司推出的新一代数据库应用开发工具,由于其功能强大,开发快速及支持多平台等而颇受广大编程技术人员的欢迎。随着有关PB的应用推广使用,相关资料也纷纷面世,同时PowerSoft为适应开发的需要也不断的推出PB的更新版本,PB作为第四代语言的数据库开发工具在开发工具市场中占有相当高的比例。
在使用PB进行开发的过程中,不少开发者在感受PB带来的快速,强大的功能愉悦的同时,也深感在发布应用时PB存在的不便之处:首先PB在编译完成后的执行文件不能独立运行,必须包含PB的运行时库文件以及数据库驱动文件,网络驱动文件等。其次,在包含这些文件时必须十分清楚各个运行时库文件的用途,不同数据库对应的数据驱动的动态链接库文件集等,但往往这方面的资料却非常难得。因而一个本来非常精简的PB应用在打包发布后却显得非常臃肿。
本文旨在讲叙针对在Windows95/98下用PB6.0开发的,使用Powersoft的SQL Aaywhere数据库作为本地数据库的应用的发布过程,阐明如何为PB的应用发布“减肥”,特别是要说明的是如何将SQL Anywhere 数据库精简后包含在应用当中,并如何配置其数据源,而不用再另外安装SQL Aaywhere作为本地数据库的驱动。
一般地说发布一个PB应用除应用程序部件本身外还应该包含如下文件及进行相关操作:
1. PowerBuilder运行时动态链接库( Runtime Library )。
2. 数据库接口:一方面包括PB提供的数据库专用接口或ODBC接口程序,另一方面包括不同数据库厂商提供的ODBC数据库驱动程序。
3. ODBC数据源的配置。
4. 如果是采用C/S方式,包含数据库厂商的Client端,例如SYBASE公司的Open Client 及ORALCLE公司的SQL*Net。
就本文而言,我们只重点讨论1-3项,现分别阐述如下:
二.PowerBuilder运行时动态链接库( Runtime Library )。
不同版本的PB所需要的运行时动态链接库文件不尽相同,但库名有相似的地方,这些DLL都必须包含在应用程序目录或系统目录当中,对于Windows下32位的应用程序,必须一起发行的运行时库是PBVM60.DLL,其他部件可选。对于Windows下16位的应用程序,必须一起发行的运行时库是PBVM60W.DLL。总之,PB6.0版本相对于PB5.0及以前版本,运行时库的数量减少了很多,这也有利于开发人员对应用程序打包发行。现以PB6.0运行在32位WINDOWS95/98为例说明,详细解释见下表1-1:
序号
文件
用途
备注
1
PBVM60.DLL
PowerBuilder 虚拟机
必需
2
PBDWE60.DLL
DataWindow 数据窗口引擎
可选
3
PBRTC60.DLL
Rich Text Control管道,超文本控件
可选
4
PBTRA60.DLL
DLL used for tracing db calls数据库访问跟踪
可选
表1-1
三. 数据库接口。
所有数据库接口文件及驱动程序必需放在应用程序目录或系统目录中。
1. PB专用数据库接口及ODBC数据库接口。
在WINDOWS95/98下用户可以根据自己采用的不同数据库在发布应用程序时包含下列接口文件,见下表2-1所示。
序号
数据库
接口文件
1
Powersoft ODBC Interface
PBODB60.DLL,PBODB60.INI
2
INFORMIX I-Net 5
PBIN560.DLL
3
INFORMIX I-Net 7
PBIN760.DLL
4
Microsoft SQL Server 4.x DB-Lib
PBSYB60.DLL,PBDBL60.DLL
5
Microsoft SQL Server 6.0
PBMSS60.DLL
6
Oracle Version 7.1
PBO7160.DLL
7
Oracle Version 7.2
PBO7260.DLL
8
Oracle Version 7.3
PBO7360.DLL
9
IBM databases
PBIBM60W.DLL
10
Sybase Information CONNECT DB2 Gateway
PBMDI60.DLL,PBDBL60.DLL
11
Sybase Net-Gateway for DB2
PBNET60.DLL,PBDBL60.DLL
12
Sybase SQL Server 4.x DB-Lib
PBSYT60.DLL,PBDBT60.DLL
13
Sybase SQL Server 10.x and 11.x CT-Lib
PBSYC60.DLL
表2-1
2. 第三方厂商提供的ODBC数据库驱动程序。
如果用户的数据库采用ODBC数据库驱动方式,这种数据库的连接方式较专用数据库接口复杂,并且连接使用的效率也比专用数据库低。因此除要了包含上面讲到的Powersoft ODBC Inerface 接口文件外,即PBODB60.DLL及PBODB60.INI两个文件,还必需在WINDOWS目录中存在ODBCINST.INI及ODBC.INI 文件 及 Microsoft ODBC 驱动程序及相关DLL。另外,就是要包含各个数据库厂商提供或支持的ODBC数据库驱动程序。下面列出 部分数据库厂商的驱动程序如下表2-2:
序号
数据库
驱动程序
1
Text
PBTXT09.DLL,PBTXT09.HLP,PBTXT12.DLL,PBTXT12.HLP
2
DB2
PBDB209.DLL,PBDB209.DLL,PBDB212.DLL,PBDB212.DLL
3
Btrieve
PBBTR09.DLL,WBTRCALL.DLL,PBBTR09.HLP,
PBBTR12.DLL,PBBTR12.HLP
4
dBASE
PBDBF09.DLL,PBDBF09.HLP,PBDBF12.DLL,PBDBF12.HLP
5
Paradox 4/5
PBIDP09.DLL,PBBAS09.DLL,PBDBC09.DLL,PBFLT09.DLL
PBUTL09.DLL,PBIDP09.HLP,IVTRN09.DLL,IVPB.LIC
6
SQL Anywhere
WOD50W.DLL,WL50EN.DLL,WODBC.HLP,WODBC.HLP WOD50T.DLL,WL50ENT.DLL,WTR50T.DLL,WODBC.HLP
表2-2
四. ODBC数据源配置。
在包含以上文件之后,还必需对使用ODBC数据库方式的应用进行ODBC数据源的配置,以便在安装完毕后应用程序可以直接访问用户数据源。以下介绍的数据源配置原理及方法由于涉及到修改系统注册表,可以使用手工方式实现,也可以在制作应用程序的安装盘时在安装步骤中设置好。ODBC数据源的配置涉及到微软的ODBC驱动程序及相关动态链接库。此部件可以在安装WINDOWS95/98时作为系统的一部分装入机器,并在“控制面板”中可以找到“32 bit ODBC(32位ODBC)”数据源管理器项并使用其进行操作。
下面以使用SQL Anywhere 数据库创建的用户数据库为例来说明如何使用数据源管理器进行ODBC的手工配置及如何在安装程序中自动修改系统注册表,其他数据库可以参考SQL Anywhere 进行操作。首先列出SQL Anywhere 数据库必需的最精简的文件清单。见表3-1:
序号
文件
作用
类型
1
WOD50T.DLL
SQL Anywhere ODBC 驱动
ODBC驱动
2
DBL50T.DLL
数据库接口动态链接库
数据库文件
3
WL50ENT.DLL
数据库接口的英文字符串
4
WTR50T.DLL
ODBC翻译动态链接库
5
WODBC.HLP
配置ODBC的帮助文件
6
DBENG50.EXE
数据库引擎
表3-1
1.使用数据源管理器配置用户数据源。
1.1. 安装SQL Anywhere数据库驱动程序,使数据源管理器中的"ODBC驱动程序"页增加一行SQL Anywhere的驱动说明。
1.2. 在"用户DSN"一页选择"添加",然后选择SQL Anywhere数据源,出现数据源的配置信息表后,将数据源名(Data Source Name),数据库名(Database File),用户ID号(User ID),用户密码(Password)等信息添齐,选择"OK"确认,此时在"用户数据源"的窗口中就会增加用户的数据库的ODBC驱动,选择"确认"后退出数据源管理器。
进行以上两步以后重新启动系统,用户就可以在运行应用程序后使用SQL Anywhere数据库。
2. 修改INI文件及系统注册表配置用户数据源。
(以下注:C:\TestApp为用户应用程序目录,C:\TestApp\Sqlany50为应用程序包含的SQL Anywhere数据库驱动文件目录,TestDB.DB为用户数据库。)
1.1修改ODBCINST.INI文件:
在[ODBC Drivers] 节中增加一行:
Sybase SQL Anywhere 5.0 = Installed
增加一节[Sybase SQL Anywhere 5.0] 并在此节中加入:
Setup = C:\TestApp\Sqlany50\WOD50W.DLL
Driver = C:\TestApp\Sqlany50\WOD50W.DLL
1.2修改ODBC.INI文件:
在[ODBC Data Sources]节中增加一行:
TestDB = Sybase SQL Anywhere 5.0
增加一节[TestDB]并在此节中加入:
Driver = C:\TestApp\Sqlany50\WOD50W.DLL
888888888888
2002-12-05
打赏
举报
回复
楼上说的都对
flyhot
2002-12-05
打赏
举报
回复
同意!
ice2water
2002-12-03
打赏
举报
回复
PB运行时刻库(32位)
pbaen60.tlb
pbdwe60.dll
pbvm60.dll
sql anywhere5相应的文件
dbeng50.exe
dbl50t.dll
wl50ent.dll
wod50t.dll
wodbc.hlp *当然可以不装拉
wtr50t.dll
pbdwe60.dll
pbmss60.dll
pbrtc60.dll
pbtra60.dll
pbvm60.dll
Anywhere7.0运行支持文件如下:
dbeng7.exe
dbodbc7.dll
dbctrs7.dll
dbctrs7.ini
dblgen7.dll
dbserv7.dll
DBLGZH7.DLL
fzq2015
2002-12-03
打赏
举报
回复
数据库管理系统 PowerBuilder专用接口文件
INFORMIX 5.x PBIN560.DLL
INFORMIX 6.x/7.x PBIN760.DLL
MDI Database Gateway(DB2)接口 PBMDI60.DLL和 PBDBL60.DLL
Oracle 7.x PBO7160.DLL (7.1) PBO7260.DLL (7.2) PBO7360.DLL (7.3) Powersoft ODBC接口 PBODB60.DLL和 PBODB60.INI
SQL Server 4.x PBSYB60.DLL和 PBDBL60.DLL
SQL Server 6.x PBMSS60.DLL Sybase SQL Server PBDBL60.DLL和 PBDBT60.DLL再加上 PBSYC60.DLL (ct-lib)或 PBSYT60.DLL (db-lib) Sybase NetGateway PBNET60.DLL和 PBDBL60.DLL
toutou
2002-12-03
打赏
举报
回复
我感觉除了+SQLAnwhere5.0的以外,都是PB的那些基础的DLL和那些专用的数据库接口DLL外没有什么特别的吧
libjcc.dll
pbdwe80.dll
pbo8480.dll(Oracle的)
pbodb80.dll(ODBC的)
pbrtc80.dll
pbvm80.dll
george77
2002-12-03
打赏
举报
回复
PBDWE60.DLL
PBODB60.DLL
PBSYC60.DLL
PBVM60.DLL
PFCCOM32.DLL
PFCCOMM.DLL
PFCFLSRV.DLL
大概这么多,还有你自己的pbd文件、资源文件、另外用到的dll文件
VS编译的控制台
程序
发布
问题
所谓
程序
的
发布
,指的是把运行无误的
程序
公布出来或者提交给用户。那么用VS编译的控制台
程序
发布
时
需要
注意哪些事项呢? ①如果直接把Debug版本的
程序
发布
,生成的.exe
文件
将会很大,因为里面包含了很多的调试信息。所以应该改为Release版本。以vs2013为例,把工具栏的相关部分改为如下所示。 ②
程序
运行的过程中或多或少都会包含一些动态链接
库
,如果采用动态编译,那么运行在不具备所需动态链
QT5
程序
发布
--打包可执行
文件
和动态链接
库
成单一
文件
到了QT最后的
程序
发布
阶段,QT5.5已经提供windows操作系统下
程序
打包工具,这个工具在安装目录D:\Qt\Qt5.5.0\5.5\mingw492_32\bin路径下,
需要
在控制台操作,所以首先将这个路径加入到环境变量中。 然后切换到release版本下编译出来的可执行
文件
所在的目录,或者将该可执行
文件
拷贝出来到一个空白的
文件
夹中,那就切换到该
文件
夹所在的路径,执行windeployqt...
Qt 解决
程序
动态
库
必须和可执行
文件
放同一
文件
夹
欢迎来到我的博客,希望这篇文章对你有所帮助,如果觉得不错,请点赞搜藏哈。 文章目录Qt 解决
程序
动态
库
必须和可执行
文件
放同一
文件
夹1 背景2 使用场景描述2.1 添加动态
库
2.2 更改编译目录2.3 复制
库
文件
到编译目录并运行
程序
2.4 复制
库
文件
到
程序
根目录2.5 Release下测试3 实现动态
库
文件
夹分类3.1 需求3.2 实现3.2.1 查看项目运行配置3.3 结果3.3 结果 Qt 解决
程序
动态
库
必须和可执行
文件
放同一
文件
夹 1 背景 最近项目开发
需要
调用多个外部的动态
库
,以前一般也就是调用一两.
C/C++静态
库
和动态
库
的制作、使用、优缺点
C++
程序
员必会的知识储备 什么是
库
???
库
文件
是计算机上的一类
文件
,可以简单的把
库
文件
看成一种代码仓
库
,它提供给使用者一些可以直接拿来用的变量、类、函数等
库
是一种特殊的
程序
,编写
库
文件
和编写一般的
程序
的区别不大,只是
库
文件
不能单独运行
库
文件
有两种,静态
库
和动态
库
(共享
库
) ,静态
库
在
程序
的链接阶段就被复制到了
程序
中,而动态
库
在链接阶段只是被记录的一些信息(如
文件
名),而没有把动态
库
复制到
程序
中,而是在
程序
运行阶段由系统动态加载到内存中供
程序
调用。
库
的好处:代码保密(c++
程序
即使被反编译
GitHub怎么用?GitHub是什么?新手怎么用GitHub?图文并茂,不看都不行
GitHub怎么用?GitHub是什么?新手怎么用GitHub?这些
问题
都不是
问题
了:英文10分【满分100分】水平的人来说:这个教程和小说很重要!这妮儿图文并茂,比我还幽默 汗!!!,我就直接转载过来,
需要
的同学赶紧马克走吧! 绝对新手入门极品 。。。小说 (我就不说这教程)。md不能再生动!作者:珊姗是个小太阳链接:http://www.zhihu.com/question/2007006...
PowerBuilder
1,108
社区成员
66,453
社区内容
发帖
与我相关
我的任务
PowerBuilder
PowerBuilder 相关问题讨论
复制链接
扫一扫
分享
社区描述
PowerBuilder 相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章