如何利用InstallShield for Delphi7打包Oracle9i客户端制作C/S数据库应用程序?
Posted 癫狂编程
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何利用InstallShield for Delphi7打包Oracle9i客户端制作C/S数据库应用程序?相关的知识,希望对你有一定的参考价值。
各位大虾:
小生菜鸟飞飞想完成如下工作:
以Oracle9i作为后台数据库,以Delphi7作为前台开发工具制作一个客户机/服务器(C/S)类型的数据库应用系统.计划以ADO组件的形式访问数据库中的表.
请问我该如何利用Delphi7自带的安装程序制作工具InstallShield Express for Delphi7将Oracle客户端打包进安装程序呢? 如果每一台客户机上都要安装Oracle客户端的话那好象太笨了.请问有没有什么办法可以直接把需要的文件拷贝出来,同时把注册表里的哪些值需要导出来呢?飞飞不想利用第三方控件,因为怕涉及到版权问题,很麻烦.
请这方面有经验的大虾给予指点,最好能给出详细的步骤,因为飞飞在这方面经验是很欠缺的.
飞飞在此多谢了!
我建議:
1. 用BDE連接方式較好
2. InstallShield Express for Delphi7生成最小安裝程式
3. 在你電腦最小化安裝ORACLE
4. 把以上二者安裝在硬盤的程式打包拷貝出來
5. 用XCOPY 把這些文件按原目錄拷貝進電腦就可以
6. 不過電腦需要重新啟動的
7. 以上文件在安裝時最好裝在C:盤
因為有電腦只有C:盤,可能沒有別的盤的
8. 以上拷貝過程要作個批處理的
以下是我的批處理,參考一下:
z:ufferSETUPFOXSETUP
XCOPY z:BUFFEROOPROGRA~1*.* /S C:PROGRA~1
MD c:ORACLE
XCOPY z:BUFFEROOORACLE*.* /S c:ORACLE
COPY C:AUTOEXEC.BAT C:AUTOEXEC1.BAT
COPY z:BUFFER2AUTOEXEC.BAT C:
COPY z:BUFFEROON8EC_D.LNK C:
COPY z:BUFFEROO*.REG C:
REGEDIT C:ORACLE.REG
REGEDIT C:ODBC1.REG
REGEDIT C:ODBC2.REG
COPY z:ufferSETUPDLL*.* C:WINNTSYSTEM
COPY z:ufferSETUPDLL*.* C:WIN98SYSTEM
COPY z:ufferSETUPDLL*.* C:CWIN98SYSTEM
COPY z:ufferSETUPDLL*.* C:WINdowsSYSTEM
COPY z:ufferSETUPDLL*.* C:WINdows.000SYSTEM
MD C:FOXMOLD
COPY z:BUFFERFOXMOLD*.* C:FOXMOLD
COPY Z:FOXMOLD*.LNK C:WINNTDESKTOP
COPY Z:FOXMOLD*.LNK C:WIN98DESKTOP
COPY Z:FOXMOLD*.LNK C:CWIN98DESKTOP
COPY Z:FOXMOLD*.LNK C:WINDOWSDESKTOP
COPY Z:FOXMOLD*.LNK C:WINDOWS.000DESKTOP
REM EDIT BY KENT. -START
COPY z:BUFFERVCLMID50.BPL C:WINNTSYSTEM32
COPY z:BUFFERVCLMID50.BPL C:WIN98SYSTEM32
COPY z:BUFFERVCLMID50.BPL C:CWIN98SYSTEM32
COPY z:BUFFERVCLMID50.BPL C:windowsSYSTEM32
COPY z:BUFFERVCLMID50.BPL C:windows.000SYSTEM32
REM EDIT BY KENT. -END.
C:PROGRA~1COMMON~1BORLAN~1BDEBDEADMIN
exit
以上可适合几種WINDOWS系統版本的
以下是我的批處理,參考一下: 安裝DELPHI環境 z:ufferSETUPFOXSETUP XCOPY z:BUFFEROOPROGRA~1*.* /S C:PROGRA~1 拷貝ORACLE MD c:ORACLE XCOPY z:BUFFEROOORACLE*.* /S c:ORACLE 拷貝批處理 COPY C:AUTOEXEC.BAT C:AUTOEXEC1.BAT COPY z:BUFFER2AUTOEXEC.BAT C: 拷貝ORACLE鍊接及注冊 COPY z:BUFFEROON8EC_D.LNK C: COPY z:BUFFEROO*.REG C: 註冊 REGEDIT C:ORACLE.REG REGEDIT C:ODBC1.REG REGEDIT C:ODBC2.REG 拷貝DELPHI包 COPY z:ufferSETUPDLL*.* C:WINNTSYSTEM COPY z:ufferSETUPDLL*.* C:WIN98SYSTEM COPY z:ufferSETUPDLL*.* C:CWIN98SYSTEM COPY z:ufferSETUPDLL*.* C:WINdowsSYSTEM COPY z:ufferSETUPDLL*.* C:WINdows.000SYSTEM 拷貝應用程式 MD C:FOXMOLD COPY z:BUFFERFOXMOLD*.* C:FOXMOLD COPY Z:FOXMOLD*.LNK C:WINNTDESKTOP COPY Z:FOXMOLD*.LNK C:WIN98DESKTOP COPY Z:FOXMOLD*.LNK C:CWIN98DESKTOP COPY Z:FOXMOLD*.LNK C:WINDOWSDESKTOP COPY Z:FOXMOLD*.LNK C:WINDOWS.000DESKTOP REM EDIT BY KENT. -START 拷貝DELPHI包 COPY z:BUFFERVCLMID50.BPL C:WINNTSYSTEM32 COPY z:BUFFERVCLMID50.BPL C:WIN98SYSTEM32 COPY z:BUFFERVCLMID50.BPL C:CWIN98SYSTEM32 COPY z:BUFFERVCLMID50.BPL C:windowsSYSTEM32 COPY z:BUFFERVCLMID50.BPL C:windows.000SYSTEM32 REM EDIT BY KENT. -END. C:PROGRA~1COMMON~1BORLAN~1BDEBDEADMIN exit 修改DELPHI BDE |
1.在安装了Oracle客户端程序后,在Oracle安装目录下有如下目录和文件是连接Oracle数据库服务器所必需的:(最好保持目录层次关系结构) 2.OracleBIN及子目录文件,并且保证应用程序可以找到该目录,即该目录为系统目录或者PATH目录。 3.OracleOCOMMONNLSADMIN目录以及其下所有文件 4.OracleOCOMMONNLSMESG目录以及其下所有文件 5.OracleNETWORKADMIN nsnames.ora 这个文件是配置网络服务名用的 可以用记事本打开,改为正确的配置。 6.OracleORACOREMesg以及其下所有MSB文件 7.导入注册表到客户机: REGEDIT5 [HKEY_LOCAL_MACHINESOFTWAREORACLE] "inst_loc"="C:\Program Files\Oracle\Inventory" "ORACLE_HOME"="D:\oracle\ora81" "ORACLE_HOME_NAME"="OraHome81" "API"="D:\oracle\ora81\dbs" "ORACLE_GROUP_NAME"="Oracle - OraHome81" "NLS_LANG"="NA" "OLEDB"="D:\oracle\ora81\oledb\mesg" "VOBHOME2.0"="D:\oracle\ora81" "OO4O"="D:\oracle\ora81\oo4o\mesg" [HKEY_LOCAL_MACHINESOFTWAREORACLEALL_HOMES] "HOME_COUNTER"="1" "DEFAULT_HOME"="OraHome81" "LAST_HOME"="0" [HKEY_LOCAL_MACHINESOFTWAREORACLEALL_HOMESID0] "NAME"="OraHome81" "PATH"="D:\oracle\ora81" "NLS_LANG"="NA" [HKEY_LOCAL_MACHINESOFTWAREORACLEHOME0] "ID"="0" "ORACLE_GROUP_NAME"="Oracle - OraHome81" "ORACLE_HOME_NAME"="OraHome81" "ORACLE_HOME"="D:\oracle\ora81" "NLS_LANG"="SIMPLIFIED CHINESE_CHINA.ZHS16GBK" "ORACLE_SID"="QIAODB" //这个要和服务器的sid一致 "ORACLE_HOME_KEY"="Software\ORACLE\HOME0" "SQLPATH"="D:\oracle\ora81\dbs" "ORACLE_BASE"="D:\oracle" "MSHELP_TOOLS"="D:\oracle\ora81\MSHELP" "RDBMS_CONTROL"="D:\oracle\ora81\DATABASE" "RDBMS_ARCHIVE"="D:\oracle\ora81\DATABASE\ARCHIVE" |
以上是关于如何利用InstallShield for Delphi7打包Oracle9i客户端制作C/S数据库应用程序?的主要内容,如果未能解决你的问题,请参考以下文章
在 InstallShield for DPI 中自定义安装过程
Installshield limited edition for VS2012安装,不能注册问题
InstallShield Limited Edition for Visual Studio 国内注册时国家无下拉框解决方法
InstallShield Limited Edition for Visual Studio注册码
VS 之 InstallShield Limited Edition for Visual Studio 2015 图文教程
VS 之 InstallShield Limited Edition for Visual Studio 2015 图文教程