收藏 分销(赏)

PowerBuilder中生成应用程序.doc

上传人:pc****0 文档编号:9442666 上传时间:2025-03-26 格式:DOC 页数:6 大小:104.50KB
下载 相关 举报
PowerBuilder中生成应用程序.doc_第1页
第1页 / 共6页
PowerBuilder中生成应用程序.doc_第2页
第2页 / 共6页
点击查看更多>>
资源描述
第16章 课前准备内容 //使用代码配置ODBC数据源(以Adaptive Server Anywhere 9.0为例) /* 了解注册表相关信息 HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC DRIVERS存放已经注册的ODBC数据源驱动程序 HKEY_LOCAL_MACHINE\Software\ODBC\ODBCINST.INI下可对已经注册的ODBC数据源驱动程序进行设置 HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.INI\ODBC Data Sources下存放数据源名称及其驱动程序类型 HKEY_LOCAL_MACHINE\Software\odbc\odbc.ini下存放已经注册的ODBC数据源的具体细节 KYEY_LOCAL_MACHINE\Software\Microsoft\windows\CurrentVersion\App Paths下存放应用程序安装到用户计算机上后在注册表中注册的应用程序名 HKEY_LOCAL_MACHINE\Software\Microsoft\windows NT\CurrentVersion下存放当前计算机中windows安装的相应信息(包括安装路径等) */ 问题:如何找到相应的数据库驱动程序 这些文件可以在注册表的HKEY_LOCAL_MACHINE\Software\ODBC\ODBCINST.INI下相应键中找到。如asa9.0为dbeng9.EXE、dbodbc9.dll。 必备函数: RegistryGet( Key,Valuename,Valuetype,Value) 功能:在PowerBuilder程序中读取注册表中的信息。 RegistrySet( Key,Valuename,Valuetype,Value) 功能:在PowerBuilder程序中设置注册表中的信息。 Key表示主键; Valuename表示键值名; Valuetype表示键值类型;Value表示键值。 //一、设置程序所需要的变量 Ulong ul_num Int answer,answer1,answer2,answer3,answer4,answer5,ansapp String ls_driver,ls_start,ls_location,app_path,db_path,odbcstr //二、判断windows安装路径下是否有Adaptive Server Anywhere 9.0的驱动程序 //步骤1: //取windows xp或windows 2000安装目录,并保存到ls_location变量 answer=ReGIStryGet("HKEY_LOCAL_MACHINE\Software\Microsoft\windows NT\CurrentVersion","SystemRoot",RegString!,ls_location) IF answer = -1 THEN Messagebox('错误','应用程序无法获取windows的安装目录,系统将终止运行!',Stopsign!) RETURN END IF //步骤2: //判断Adaptive Server Anywhere 9.0的驱动程序是否正确安装 ls_driver=ls_location+'\dbodbc9.dll' ls_start=ls_location+'\dbeng9.EXE' IF NOT (FileExists(ls_driver) AND FileExists(ls_start)) THEN Messagebox('错误','系统中没有安装Adaptive Server Anywhere 9.0的驱动程序,系统将终止运行!',StopSign!) RETURN else messagebox("信息"," Adaptive Server Anywhere 9.0驱动程序已经安装!") END IF //三、在ODBC中注册Adaptive Server Anywhere 9.0驱动程序 //步骤1: //设置ODBC\ODBCINST.INI\ODBC DRIVERS answer=ReGIStrySet('HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC DRIVERS','Adaptive Server Anywhere 9.0',RegString!,'Installed') IF answer = -1 THEN Messagebox('错误','应用程序无法设置ODBC DRIVERS,系统将终止运行!',StopSign!) RETURN END IF //步骤2: //设置ODBC\ODBCINST.INI\ answer1=ReGIStrySet('HKEY_LOCAL_MACHINE\Software\ODBC\ODBCINST.INI\Adaptive Server Anywhere 9.0','Driver',RegString!,ls_driver) answer2=ReGIStrySet('HKEY_LOCAL_MACHINE\Software\ODBC\ODBCINST.INI\Adaptive Server Anywhere 9.0','Setup',RegString!,ls_driver) IF answer1 = -1 OR answer2 = -1 THEN Messagebox('错误','应用程序无法设置ODBCINST.INI,系统将终止运行!',StopSign!) RETURN END IF //四、在注册表中设置ODBC数据源 //步骤1: //设置ODBC DATA SOURCE名称(anysql为数据源名) answer=ReGIStrySet('HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.INI\ODBC Data Sources','anysql',RegString!,'Adaptive Server Anywhere 9.0') IF answer = -1 THEN Messagebox('错误','应用程序无法设置ODBC DATA SOURCE名称,系统将终止运行!',StopSign!) RETURN END IF //步骤2: //获取应用程序的安装路径(ybinput为应用程序安装到用户计算机上后在注册表中注册的应用程序名,yibiao.db为应用程序的数据库名,与应用程序在同一目录下,anysql为数据源名) ansapp = ReGIStryGet("KYEY_LOCAL_MACHINE\Software\Microsoft\windows\CurrentVersion\App Paths\ybinput","Path",RegString!,app_path) IF ansapp = -1 THEN Messagebox('错误','应用程序无法获取安装路径名,系统将终止运行!',StopSign!) RETURN ELSE db_path=app_path+'yibiao.db' END IF /*备注 如果当前计算机已经安装了Adaptive Server Anywhere 9.0驱动程序可以跳过步骤1和步骤2,直接使用以下三条语句 db_path='c:\pbtest1\database.db' ls_driver='c:\pbtet1'+'\dbodbc9.dll' ls_start='c:\pbtest1'+'\dbeng9.EXE' */ //步骤3: //设置ODBC.INI的细节 answer1 = ReGIStrySet('HKEY_LOCAL_MACHINE\Software\odbc\odbc.ini\anysql','driver',RegString!,ls_driver) answer2 = ReGIStrySet('HKEY_LOCAL_MACHINE\Software\odbc\odbc.ini\anysql','start',RegString!,ls_start) answer3 = ReGIStrySet('HKEY_LOCAL_MACHINE\Software\odbc\odbc.ini\anysql','autostop',RegString!,'yes') answer4 = ReGIStrySet('HKEY_LOCAL_MACHINE\Software\odbc\odbc.ini\anysql','DatabaseFile',RegString!,db_path) answer5 = ReGIStrySet('HKEY_LOCAL_MACHINE\Software\odbc\odbc.ini\anysql','DatabaseName',RegString!,'yibiao') IF answer1 = -1 OR answer2 = -1 OR answer3 = -1 OR answer4 = -1 OR answer5 = -1 THEN Messagebox('错误','应用程序无法设置ODBC.INI细节,系统将终止运行!',StopSign!) RETURN END IF 备注:在这个步骤3中也可以在HKEY_CURRENT_USER\Software\odbc\odbc.ini\anysql下设置 START项有许多参数,“-C 8M”设置初始高速缓存大小8M,一般建议64M。“-Q”安静模式 。‘-D’禁用异步 I/O [Windows NT 、NetWare]。‘-M’对于所有数据库,在每个检查点之后截断事务日志。 //五、使用前面在注册表中注册的ODBC数据源连接数据库 odbcstr = 'dsn=anysql' sqlca.dbms = 'odbc' SQLCA.AutoCommit = False sqlca.dbparm = "connectstring='"+odbcstr+";uid=dba;pwd=sql'" connect using sqlca; open(w_main) 第 6 页 共 6 页 //编译执行文件 图一 新建应用程序工程 图二 填写执行文件所需的信息 l 图二中信息的填写 在图二中最顶端的两行分别填写执行文件名,执行文件所需的资源列表文件名。 Project build options栏中注意要选择full build表示全部编译 Code generation option栏中选择生成机器代码 Version栏中填写版权信息 Library栏中选中所有pbl库文件的dll复选框,如果需要的话可在其后填入相应得资源列表文件名 l 编译执行文件所需的resource file name解释 在最后生成时产生的pbr文件可以把程序用到的 bmp,jpg,ico 等等资源文件编译到 DLL,EXE 文件,使用的资源会自动包含!! 创建了.pbr资源文件以后就可以不再需要那些.bmp,.ico文件了 如果不生成,要把引用资源文件放到当前目录下,使用相对路径。 制作pbr文件可以在pb中创建,工具栏上面有个Edit按钮,点击之后进入了文件编辑界面,输入你要保存的内容,一行只能输入一个图片文件的路径名(要和在pb中用到的路径相同),然后保存时选择pbr文件类型即可。用记事本也可以编辑pbr文件
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服