PB及ASA的打包說明
PB及ASA的打包說明
一.安裝步驟
一般地說釋出一個PB應用除應用程式部件本身外,還應該包含如下檔案及相關操作:
1. PowerBuilder執行時動態連結庫( Runtime Library )。
2. 資料庫介面:一方面包括PB提供的資料庫專用介面或ODBC介面程式,另一方面包括不同資料庫廠商提供的ODBC資料庫驅動程式。
3. ODBC資料來源的配置。
二.PowerBuilder執行時動態連結庫( Runtime Library )。
不同版本的PB所需要的執行時動態連結庫檔案不盡相同,但庫名有相似的地方,這些DLL都必須包含在應用程式目錄或系統目錄當中:
PB6.5所需檔案:
必需 PBVM60.DLL PowerBuilder 虛擬機器
可選 PBDWE60.DLL DataWindow 資料視窗引擎
可選 PBRTC60.DLL 超文字控制元件
可選 PBTRA60.DLL 資料庫訪問跟蹤
可選 PBODB60.DLL PB的ODBC介面
可選 PBIN760.DLL INFORMIX 介面
可選 PBMSS60.DLL Microsoft SQL Server介面
可選 PBSYC60.DLL Sybase SQL Server介面
可選 PBO7360.DLL/PBO7260.DLL Oracle Version介面
PB7.0所需檔案:
必需 PBVM70.DLL PowerBuilder 虛擬機器
必需 LIBJCC.DLL PowerBuilder 庫管理
可選 PBDWE70.DLL DataWindow 資料視窗引擎
可選 PBRTC70.DLL 超文字控制元件
可選 PBTRA70.DLL 資料庫訪問跟蹤
可選 PBODB70.DLL PB的ODBC介面
可選 PBIN770.DLL INFORMIX 介面
可選 PBMSS70.DLL Microsoft SQL Server介面
可選 PBSYC70.DLL Sybase SQL Server介面
可選 PBO7370.DLL/PBO8470.DLL Oracle Version介面
PB8.0所需檔案:
必需 PBVM80.DLL PowerBuilder 虛擬機器
必需 LIBJCC.DLL PowerBuilder 庫管理
可選 PBDWE80.DLL DataWindow 資料視窗引擎
可選 PBRTC80.DLL 超文字控制元件
可選 PBTRA80.DLL 資料庫訪問跟蹤
可選 PBODB80.DLL PB的ODBC介面
可選 PBIN780.DLL INFORMIX 介面
可選 PBMSS80.DLL Microsoft SQL Server介面
可選 PBSYC80.DLL Sybase SQL Server介面
可選 PBO7380.DLL/PBO8480.DLL/PBO9080.DLL Oracle Version介面
以上檔案可以在C:\Program Files\Sybase\Shared\PowerBuilder取得。
三. SQL Anywhere ODBC資料庫驅動程式。
SQL Anywhere 5.0:
DBTL50T.DLL 資料庫工具
DBL50T.DLL 資料庫介面
WODBC.HLP 幫助文件
WOD50T.DLL ODBC 驅動
WL50ENT.DLL 英文字串
WTR50T.DLL ODBC翻譯
DBENG50.EXE 資料庫引擎
SQL Anywhere 6.0:
DBL60T.DLL,WODBC.HLP,WOD60T.DLL,WL60ENT.DLL,WTR60T.DLL,DBENG60.EXE
SQL Anywhere 7.0:
DBODBC7.DLL,DBLIB7.DLL,DBWTSP7.DLL,DBLGEN7.DLL,DBODTR7.DLL,DBENG7.EXE
四. ODBC資料來源配置。
在包含以上檔案之後,還必需對使用ODBC資料庫方式的應用進行ODBC資料來源的配置,以便在安裝完畢後應用程式可以直接訪問使用者資料來源。
下面以使用SQL Anywhere 5.0資料庫建立的使用者資料庫為例來說明如何使用資料來源管理器進行ODBC的手工配置及如何在安裝程式中自動修改系統登錄檔,其他資料庫可以參考SQL Anywhere 5.0進行操作。
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. 修改系統登錄檔配置使用者資料來源。
(以下注:C:\YourApp為使用者應用程式目錄,C:\YourApp\Sqlany50為應用程式包含的SQL Anywhere資料庫驅動檔案目錄,YourDB.DB為使用者資料庫。)
在HKEY_LOCAL_MACHINE\software\ODBC\ODBC Drivers下,增加字串鍵值:
Sybase SQL Anywhere 5.0 = "Installed"
在HKEY_LOCAL_MACHINE\software\ODBC\Sybase SQL Anywhere 5.0下,增加字串鍵值:
Driver = "C:\YourApp\Sqlany50\WOD50T.DLL"
Setup = "C:\YourApp\Sqlany50\WOD50T.DLL"
在HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ODBC Data Source下,增加字串鍵值:
TestDB = "Sybase SQL Anywhere 5.0"
在HKEY_CURRENT_USER\Software\ODBC\ODBC.INI下,增加主鍵:TestDB,並分別加入鍵值如下:
Autostop = "yes"
Databasefile = "C:\YourApp\YourDB.DB
Databasename = "TestDB"
Driver = "C:\YourApp\Sqlany50\WOD50T.DLL"
PWD = "sql"
Start = "C:\YourApp\Sqlany50\dbeng50.exe -d -c1024 -Q"
UID = "dba"
在使用者的安裝程式中將以上步驟加入,可以使使用者的應用程式在不必安裝SQL Anywhere資料庫驅動下,也能直接訪問使用者資料來源,從而實現使用者應用程式的獨立釋出。
integer rc
string ls_dir,is_dbfile,is_datasource
ulong ls_buf
is_datasource="graduate"
ls_buf=256
ls_dir=space(ls_buf)
GetCurrentdirectoryA(ls_buf,ls_dir)
is_dbfile=ls_dir+'\graduate.db'
rc=profileint("first.ini","start","first",0)
if rc=1 then
if RegistrySet("HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\"+"Adaptive Server Anywhere 7.0","Driver",RegString!,"dbodbc7.dll")=1 then
messagebox("恭喜你","資料來源已註冊成功!")
end if
RegistrySet("HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\"+"Adaptive Server Anywhere 7.0","Setup",RegString!,"dbodbc7.dll")
RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ODBC Data Sources","graduate",RegString!,"Adaptive Server Anywhere 7.0")
RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\"+is_datasource,"Driver",RegString!,"dbodbc7.dll")
RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\"+is_datasource,"UID",RegString!,"dba")
RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\"+is_datasource,"PWD",RegString!,"sql")
RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\"+is_datasource,"DatabaseFile",RegString!,is_dbfile)
RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\"+is_datasource,"AutoStop",RegString!,"Yes")
RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\"+is_datasource,"Integrated",RegString!,"No")
RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\"+is_datasource,"DatabaseName",RegString!,"graduate.db")
RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\"+is_datasource,"Debug",RegString!,"No")
RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\"+is_datasource,"DisableMultiRowFetch",RegString!,"No")
setprofilestring("first.ini","start","first","0")
end if
只需要把datasource等幾個地方改一下就可以了
其中的graduate是我的資料庫名
if RegistrySet("HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\"+"Adaptive Server Anywhere 7.0","Driver",RegString!,"dbodbc7.dll")=1
這一句就是driver的配置
上述連線為程式碼實現,下面的是由打包程式實現的登錄檔項
有兩中連線
1.本地連線
[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ASA 8.0 Sample]
"Driver"="C:\\Program Files\\Sybase\\SQL Anywhere 8\\win32\\dbodbc8.dll"
"Description"="Adaptive Server Anywhere Sample Database"
"UID"="dba"
"PWD"="sql"
"EngineName"="asademo8"
"DatabaseFile"="C:\\Program Files\\Sybase\\SQL Anywhere 8\\asademo.db"
"Start"="C:\\Program Files\\Sybase\\SQL Anywhere 8\\win32\\dbeng8.exe -c 8m"
"AutoStop"="yes"
START項有許多引數,“-C 8M”設定初始快取記憶體大小8M,一般建議64M。“-Q”安靜模式 — 取消輸出,就是系統拖盤中不顯示資料庫引擎圖表。‘-D’禁用非同步 I/O [Windows NT 、NetWare]。‘-M’對於所有資料庫,在每個檢查點之後截斷事務日誌。
2.網路連線
[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ASA 8.0 Client Sample]
"Driver"="C:\\Program Files\\Sybase\\SQL Anywhere 8\\win32\\dbodbc8.dll"
"Description"="Adaptive Server Anywhere Sample Client"
"UID"="dba"
"PWD"="sql"
"EngineName"="asademo8"
"CommLinks"="TCPIP{}"
"AutoStop"="yes"
注意:如果你要在WINDOWS的ODBC中看到的分發的資料庫,還要以下的資訊
[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ODBC Data Sources]
"ASA 8.0 Client Sample"="Adaptive Server Anywhere 8.0"(網路連線)
"ASA 8.0 Sample"="Adaptive Server Anywhere 8.0"(本地連線)
[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\Adaptive Server Anywhere 8.0]
"Driver"="C:\\Program Files\\Sybase\\SQL Anywhere 8\\win32\\dbodbc8.dll"
"Setup"="C:\\Program Files\\Sybase\\SQL Anywhere 8\\win32\\dbodbc8.dll"
該註冊項為你分發DLL的實際路徑。
還要解釋
"HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\"
新增
鍵名:"Adaptive Server Anywhere 8.0 " 值:"Installed"
就註冊了
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/3090/viewspace-620020/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Object-c Block的使用及說明ObjectBloC
- Oracle中password file的作用及說明Oracle
- JavaScript介紹及說明(01)JavaScript
- Kibana安裝及使用說明
- wordpress模板修改及函式說明函式
- Python常用函式及說明Python函式
- PHP CS Fixer 的使用及 PHP Storm 配置說明PHPORM
- 資料泵的TRANSFORM引數說明及使用ORM
- Oauth支援的5類 grant_type 及說明OAuth
- (zt)Oracle中password file orapwd的作用及說明Oracle
- Oracle中passwordfile的作用及說明考試大全Oracle
- vue-cli@3.0 使用及配置說明Vue
- adb 埠自定義及原理說明
- Memcached常用命令及使用說明
- hyperion模組分類說明及下載
- Redis 3.0介紹及叢集說明Redis
- sqlserver鎖表的六種語法及with nolock的說明SQLServer
- 【ORACLE】Oracle常用SQL及重點功能說明OracleSQL
- ELK 之 Kibana 安裝及使用說明
- Qtum智慧合約使用方法及說明QT
- C++檔案說明及使用方法C++
- linux 常見命令及說明雜記Linux
- [MetalKit]0-instruction說明及目錄Struct
- Linux常用目錄及檔案說明Linux
- Percona 5.6 thread pool說明及使用thread
- mysql常用引數使用說明及查詢MySql
- TSM for Oracle備份指令碼及策略說明Oracle指令碼
- 插曲:Kafka的生產者原理及重要引數說明Kafka
- HttpClientFactory 使用說明 及 對 HttpClient 的回顧和對比HTTPclient
- 主流的開源ETL工具清單及優劣說明!
- 手工建立資料庫的全部指令碼及說明(轉)資料庫指令碼
- 教你手工建立資料庫的全部指令碼及說明資料庫指令碼
- C#中ref、out及特殊說明引數的用法C#
- 手工建立資料庫的全部指令碼及說明 (轉)資料庫指令碼
- ip 命令的說明
- 前端meta標籤內容定義及使用說明,meta詳細說明,meta標籤使用前端
- Ftp - 主被動模式說明及修改模式命令FTP模式
- OGG工作原理及一些配置說明