全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:3234
推到 Plurk!
推到 Facebook!

使用InstallShield將Oracle Client 及 TNSNAMES.ORA 包裝起來

尚未結案
redw
一般會員


發表:5
回覆:3
積分:1
註冊:2003-08-19

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-03-25 18:38:01 IP:61.66.xxx.xxx 未訂閱
我已經用Delphi開發好一個程式 是用ADO 中 "Microsoft OLE DB Provider for Oracle" 現在想將程式發佈到User的電腦 但User的電腦並未安裝 Oracle Client與Net8 Configuration Assistant 當然,也未設定TNSNAMES.ORA 請教一下 我該如何設定使用InstallShield 來將Oracle Client及TNSNAMES.ORA包裝起來 給User的電腦使用 以下是我在Google搜尋來的資料 但並不完整:    我现在用InstallShield给一MIS系统制作一个安装程序,该系统用Delphi开发,数据库为Oracle,用BDE连接的Client/Server模式,现在客户端必须安装Oracle系统才能工作,能否把Oracle的支持简单的打入安装程序,使客户端无须安装Oracle?     回答:         可以,但必须:      1、附加上Oracle的注册表信息,必要是稍做修改,如所在目录等。      2、必要的DLL等,如OCI.DLL,ORA805.DLL等。      3、Net80下的设置文件。      BTW,我是在NT40上做过,Win98没试过,请自己测试。 
Mickey
版主


發表:77
回覆:1882
積分:1390
註冊:2002-12-11

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-03-26 00:08:04 IP:218.32.xxx.xxx 未訂閱
基本上, InstallShield 包入檔案, 設定 Path / Registry 等,都不是問題. 但這樣做, 對 Oracle 來說, 恐怕有侵權的問題...
redw
一般會員


發表:5
回覆:3
積分:1
註冊:2003-08-19

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-03-30 00:13:17 IP:61.66.xxx.xxx 未訂閱
了解, 因為是學校在教Oracle 許多同學安裝不起來(P4問題或....) 想寫一支仿效SQL*Plus的工具供同學使用 順便賺分 現在只差Client的部份和TNS.ora的部份 感謝版主提醒 不過可以的話,還是請略作提示    以下是另一篇文章 請將以下文件拷貝到營運文件所在目錄     一、ODBC動態庫 :    ctl3d32.dll msvcrt40.dll odbc16gt.dll odbc32.dll odbc32gt.dll odbccp32.dll odbccr32.dll odbcint.dll     二、建立EXTRA子目錄,將MSVCRT.DLL文件拷貝到該子目錄下    EXTRA\MSVCRT.DLL     三、ORACLE動態庫及配置文件     Tnsnames.ora CORE35O.DLL NASNSNT.DLL NAUNTSNT.DLL NCRNT.DLL Nlnt.dll NLSRTL32.DLL  Nnfdnt.dll NNFNNT.DLL NSNT.DLL NTNT.DLL NTTNT.DLL CIW32.DLL Ora73.dll OTRACE73.DLL Sqlnet.ora Sqltnsnt.dll CORE35.DLL     四、PB動態庫     pbvm70.dll pbdwe70.dll Pbo7370.dll PBO8470.DLL pbodb70.dll libjcc.dll  可以使用midas三層架構建立一個appserver非常簡單的. 建一個remotedataserver,使用clientdataset和provider連接      我要的不多,100分。 以下是最小集︰ Directory of <> NZ80 DLL 274,432 06-29-98 18:05 NZ80.DLL NASNS80 DLL 147,456 06-10-98 11:42 NASNS80.DLL NCR80 DLL 205,824 06-10-98 11:40 NCR80.DLL NI80 DLL 41,984 06-10-98 11:40 NI80.DLL NL80 DLL 106,496 06-18-98 17:33 NL80.DLL NLSRTL33 DLL 237,056 04-28-98 20:53 NLSRTL33.DLL NMP80 DLL 11,264 06-10-98 11:40 NMP80.DLL NMS80 DLL 6,656 06-10-98 11:42 NMS80.DLL NNCI80 DLL 32,768 06-10-98 11:41 NNCI80.DLL NNFD80 DLL 4,096 06-10-98 11:41 NNFD80.DLL NNFG80 DLL 22,016 06-19-98 18:13 NNFG80.DLL NNFN80 DLL 13,312 06-10-98 11:41 NNFN80.DLL NNG80 DLL 81,408 06-10-98 11:41 NNG80.DLL NPL80 DLL 13,312 06-10-98 11:41 NPL80.DLL NR80 DLL 74,240 06-10-98 11:41 NR80.DLL NS80 DLL 188,928 06-29-98 18:05 NS80.DLL NT80 DLL 19,456 06-10-98 11:40 NT80.DLL NTT80 DLL 35,840 06-10-98 11:43 NTT80.DLL CORE40 DLL 380,416 06-08-98 18:27 CORE40.DLL OCIW32 DLL 18,432 09-08-97 16:29 OCIW32.DLL ORA805 DLL 1,583,104 06-23-98 16:15 ORA805.DLL OTRACE80 DLL 134,656 06-08-98 13:32 OTRACE80.DLL Directory of <> SQLNET ORA 191 12-18-97 14:10 SQLNET.ORA TNSNAMES ORA 140 06-08-00 19:46 TNSNAMES.ORA Directory of <> LX10035 NLB 360 04-07-98 18:16 LX10035.NLB LX00023 NLB 565 04-07-98 18:16 LX00023.NLB LX1BOOT NLB 15,134 04-28-98 13:02 LX1BOOT.NLB LX00001 NLB 721 04-07-98 18:16 LX00001.NLB LX20001 NLB 5,669 04-07-98 18:16 LX20001.NLB LX20354 NLB 57,617 04-07-98 18:17 LX20354.NLB LX60354 NLB 50,573 04-07-98 18:17 LX60354.NLB LX10001 NLB 358 04-07-98 18:16 LX10001.NLB LX20352 NLB 45,751 04-07-98 18:17 LX20352.NLB 註冊表如下︰ RegDBSetKeyValueEx ( "SOFTWARE\\ORACLE" , "NET80" , REGDB_STRING , sPath "\\NET80" , -1 ); RegDBSetKeyValueEx ( "SOFTWARE\\ORACLE" , "NLS_LANG" , REGDB_STRING ,"SIMPLIFIED CHINESE_CHINA.ZHS16GBK" , -1 ); RegDBSetKeyValueEx ( "SOFTWARE\\ORACLE" , "NLSRTL33" , REGDB_STRING , sPath "\\NLSRTL33" , -1 ); RegDBSetKeyValueEx ( "SOFTWARE\\ORACLE" , "ORA_NLS33" , REGDB_STRING , sPath "\\NLSRTL33\\DATA" , -1 ); RegDBSetKeyValueEx ( "SOFTWARE\\ORACLE" , "ORACLE_HOME" , REGDB_STRING ,sPath , -1 ); RegDBSetKeyValueEx ( "SOFTWARE\\ORACLE" , "ORACLE_HOME_NAME" , REGDB_STRING ,"DEFAULT_HOME" , -1 ); RegDBSetKeyValueEx ( "SOFTWARE\\ORACLE" , "COMPANY_NAME" , REGDB_STRING , get_sCompany(), -1 ); RegDBSetKeyValueEx ( "SOFTWARE\\ORACLE" , "P08" , REGDB_STRING , "YES", -1 ); RegDBSetKeyValueEx ( "SOFTWARE\\ORACLE" , "DBA_AUTHORIZATION" , REGDB_STRING , "ORACLE", -1 ); RegDBSetKeyValueEx ( "SOFTWARE\\ORACLE" , "SHARED_ORACLE_HOME" , REGDB_STRING , sPath, -1 ); 以上是我用Installshield作安裝時寫的腳本,大家看一看就知道需要註冊那些內容了 其中sPath是你將Oracle安裝的目錄,如C;\你的應用程式\Orawin95 Root:=HKEY_LOCAL_MACHINE 那怎么會有一個orcle安裝目錄,Copy的目錄? 方法︰在一台沒裝過ORACLE的機器上安裝ORACLE客戶端,自定義,只需安裝SQL NET和什麼, 不太記得了,然后把安裝目錄裡的文件全部打包,註冊表裡SOFTWARE\ORACLE的鍵值全要, 還有HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services關與ORACLE的全要 一切OK Oracle\bin的文件路徑加入Autoexec.bat 或者將此路徑加入到 你的主檔案的Path裡,如你的主檔案為App.exe,那么在HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFTWINDOWS\CUREENT VERSION\APP PATHS下創建子健APP.exe,添加鍵值Path:c:\oracle;c:\oracle\bin ;其中C;\oracle是假設你的Oracle安裝路徑,否則會出現什麼Oracle沒有安裝之類的錯誤。 OK,至此一切搞定
GrandRURU
站務副站長


發表:240
回覆:1680
積分:1874
註冊:2005-06-21

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-11-03 16:07:45 IP:203.75.xxx.xxx 未訂閱
雖然是很老的文章…
不過還是很想問,
我有一台空電腦,只有windows
InstallShield 有辦法安裝封裝自己開發的程式 OracleXE嗎?
這樣無腦的安裝法,請問InstallShield做得到嗎?
系統時間:2024-05-03 7:45:44
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!