PPB在PDA上使用asa10连接数据库的问题
asa10和ppb已经部署到了PDA上
连接数据库connect后报了个错
[sybase][ODBC Driver Loader]not supported until driver loaded
是不是odbc驱动的问题?
该如何解决啊?
[解决办法]
哥去年研究了一下,总结如下:
用PB2.5 开发的ODBC本地应用应该发布下列文件即可运行[any11]
1 、在应用程序的文件夹里必须存在: pkdwe25.dll, PKODB25.DLL,pkodb25.ini,pkvm25.dll //不能直接拷贝PPB下的。
2 、建立data 目录 存放DB文件
3、 建立anywhere 目录存放 dbsrv11.exe,dbsrv11.lic , dbodbc11.dll [PC上的ANYWHERE 安装目录下CE里拷贝]
4 、在PPC的windows目录下 dbcon11.dll,
dblgen11.dll,
dblgzh11.dll,
dbicudt11.dat,
dbicu11.dll
注意:any10: dbcon10.dll,dblgen10.dll,dblgzh10.dll,dbicudt10.dat,dbicu10.dll
[PC上的ANYWHERE 安装目录下CE里拷贝,, 测试过ANYWHERE 10,部署时要选国际化组件ICU,
即 dbicudt10.dat(:C:\Program Files\SQL Anywhere 10\ce下), dbicu10.dll]
5、 在PPC根目录下存放 DSN文件(及ODBC文件,此文件名与应用对象中的串必须一致)
6、 DSN文件格式如下(一是在PPC上独立运行应用程序 ,如果要连PC上数据库运行,则用二):
一:
[ODBC]
uid=dba
pwd=sql
DRIVER=\acc\any11\dbodbc11.dll [本机PPC里文件]
enginename=acc
databasename=acc
databasefile=\acc\data\demo.db
start=\acc\Any11\dbsrv11.exe
二:
要求 运行前PC上的dbsrvX.exe 一定要启动 [X为7,8,9,10,11 +]
[ODBC]
UID=DBA
PWD=sql
Integrated=No
AutoStop=Yes
ServerName=demo11 [服务器名字,就是ODBC设置栏的一项]
LINKS=tcpip(host=192.168.0.30;port=2638;broadcast=none) [IP为服务器的真实IP]
PB 程序里数据库连接字串: as_dbparm= "ConnectString='DSN=mydsn;driver=dbodbc10.dll;UID=dba;PWD=sql'"
(可以通过同步连接, IP为本地服务器的真实IP, 如果是通过USB,BLUETOOTH,WIFI,可以填写PC的IP)
如过PPC通过GPRS,则PC上开放端口,设置XP防火墙增加规则,[互连网]路由设置端口转发映射到PC局域IP)
如果某些老DB库,可能会有乱码,则增加
Charset=cp936
7. RUN
注意: ANYWHERE11 的所有发布文件位于 电脑安装目录的...CE\amr.5
POCKETBUILDER 的发布文件位于 安装路径下的 WinCE\arm
一定要注意 ARM 和 SPARM(智能电话)的区别,安装文件不一样