我用VC做了一个数据库应用,后台数据库用的是ORACLE 8i .本机运行当然正常。但我要在网络上用,如果其他机器没装ORACLE 8i的客户端,有什么办法。
说明:我的程序是有ORACLE提供的OCI(Oracle Call Interface)来调用数据库的,而没用ODBC、DAO、ADO。
注:1、我已知OCI用到了oracle 8i安装目录下BIN下共27个DLL文件。
2、我已知OCI要用注册表中local_machine/software/oracle/下的内容
3、请高手解释这些注册表文件的内容(这是我从一个已装了oracle的机子上复制下来的,我想把它用到其它未装oracle客户端的机子上,如何改)。如下:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE]
"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_MACHINE\SOFTWARE\ORACLE\ALL_HOMES]
"HOME_COUNTER"="1"
"DEFAULT_HOME"="OraHome81"
"LAST_HOME"="0"
[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ALL_HOMES\ID0]
"NAME"="OraHome81"
"PATH"="D:\\oracle\\ora81"
"NLS_LANG"="NA"
[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0]
"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"
"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"
"ORA_QIAODB_AUTOSTART"=hex(2):54,00,52,00,55,00,45,00,00,00
"ORA_QIAODB_PFILE"=hex(2):44,00,3a,00,5c,00,6f,00,72,00,61,00,63,00,6c,00,65,\
00,5c,00,61,00,64,00,6d,00,69,00,6e,00,5c,00,51,00,49,00,41,00,4f,00,44,00,\
42,00,5c,00,70,00,66,00,69,00,6c,00,65,00,5c,00,69,00,6e,00,69,00,74,00,2e,\
00,6f,00,72,00,61,00,00,00
"ORA_QIAODB_SHUTDOWN"=hex(2):54,00,52,00,55,00,45,00,00,00
"ORA_QIAODB_SHUTDOWNTYPE"=hex(2):69,00,00,00
"ORA_QIAODB_SHUTDOWN_TIMEOUT"=hex(2):33,00,30,00,00,00
4、另外,客户机上要不要设置oracle监听程序,如何设置。
如有哪位大高手能给个答案,太感动了。如需要加分,我绝对同意。
---------------------------------------------------------------
1.在安装了Oracle客户端程序后,在Oracle安装目录下有如下目录和文件是连接Oracle数据库服务器所必需的:(最好保持目录层次关系结构)
2.Oracle\BIN目录以及下面的27个DLL文件,并且保证应用程序可以找到该目录,即该目录为系统目录或者PATH目录。
3.Oracle\OCOMMON\NLS\ADMIN目录以及其下所有文件
4.Oracle\OCOMMON\NLS\MESG目录以及其下所有文件
5.Oracle\NETWORK\ADMIN\tnsnames.ora
6.Oracle\ORACORE\Mesg以及其下所有MSB文件
7.导入注册表到客户机:
REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE]
"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_MACHINE\SOFTWARE\ORACLE\ALL_HOMES]
"HOME_COUNTER"="1"
"DEFAULT_HOME"="OraHome81"
"LAST_HOME"="0"
[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ALL_HOMES\ID0]
"NAME"="OraHome81"
"PATH"="D:\\oracle\\ora81"
"NLS_LANG"="NA"
[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0]
"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"
"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"
---------------------------------------------------------------
补充一下:请注意注册表中的路径与目标机的实标路径一致。
如有不明,我的MAIL:[email protected]
----------------------------------------------------------------
说句实话,我也未测过,希望兄弟帮测一下!