What registry keys are used to search tnsnames.ora

Koen

Member
hello,

i followed the discussion about "cannot resolve service name".
I need to install my application on some client, where a forms application already exists. Those people modified the registry keys:

FORMS60_PATH= 'c:\housing'
REPORTS60_PATH= 'c:\housing'
UI_ICON= 'c:\housing'
TNS_ADMIN= 'c:\housing'

So their tnsnames resides in the 'c:\housing' directory.

My application made by Delphi and doa doesn't work on these client.
There is no Oracle home selector utility. (there is only one oraclehome)

Maybe, if i know what registry key is used by doa to determine the right tnsnames.ora, i can create or modify this key in the registry to make my application work.

By the way all tnsnames.ora are well configured because i can connect with sql*plus.

thanks for reading this

Koen Van den Broucke.
 
[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE]
"inst_loc"="C:\\Program Files\\Oracle\\Inventory"
"ORACLE_HOME"="C:\\oracle\\ora81"
"ORACLE_HOME_NAME"="OraHome81"
"API"="C:\\oracle\\ora81\\dbs"
"ORACLE_GROUP_NAME"="Oracle - OraHome81"
"NLS_LANG"="NA"

[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ALL_HOMES]
"HOME_COUNTER"="2"
"DEFAULT_HOME"="OraHome81"
"LAST_HOME"="1"

[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ALL_HOMES\ID1]
"NAME"="DEFAULT_HOME"
"PATH"="C:\\orant"
"NLS_LANG"="NA"

[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME1]
"ID"="1"
"ORACLE_GROUP_NAME"="Oracle - DEFAULT_HOME"
"ORACLE_HOME_NAME"="DEFAULT_HOME"
"ORACLE_HOME"="C:\\orant"
"NLS_LANG"="RUSSIAN_CIS.CL8MSWIN1251"
"ORACLE_HOME_KEY"="Software\\ORACLE\\HOME1"
 
Originally posted by wertep:

[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE]
"inst_loc"="C:\\Program Files\\Oracle\\Inventory"
"ORACLE_HOME"="C:\\oracle\\ora81"
"ORACLE_HOME_NAME"="OraHome81"
"API"="C:\\oracle\\ora81\\dbs"
"ORACLE_GROUP_NAME"="Oracle - OraHome81"
"NLS_LANG"="NA"

[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ALL_HOMES]
"HOME_COUNTER"="2"
"DEFAULT_HOME"="OraHome81"
"LAST_HOME"="1"

[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ALL_HOMES\ID1]
"NAME"="DEFAULT_HOME"
"PATH"="C:\\orant"
"NLS_LANG"="NA"

[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME1]
"ID"="1"
"ORACLE_GROUP_NAME"="Oracle - DEFAULT_HOME"
"ORACLE_HOME_NAME"="DEFAULT_HOME"
"ORACLE_HOME"="C:\\orant"
"NLS_LANG"="RUSSIAN_CIS.CL8MSWIN1251"
"ORACLE_HOME_KEY"="Software\\ORACLE\\HOME1"


C:\orant\network\ADMIN\tnsname.ora
 
The HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\TNS_ADMIN key will be used. The only thing that takes precedence over this key is a TNS_ADMIN environment variable.

If SQL*Plus works okay and your application cannot connect, then you must either be using an incorrect LogonDatabase in your application, or it is using a different Oracle Home (which is unlikely if you have just 1 Oracle Home). Both SQL*Plus and your application are standard SQL*Net / Net8 Client applications, so there should not be any difference.

------------------
Marco Kalter
Allround Automations
 
Tx,

for reading,found it.

In tnsnames.ora, is also a communicty string.
Somehow this string is iterpreted bij DOA en not by SQL*PLUS.
We deleted the community string and now everything works fine.
Allthouhg on some computers (like mine) it works well with the community string.
knowing the responsible keys helped to understand the problem anyway.

thanks for the help

Koen Van den Broucke,

Originally posted by mkalter:
The HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\TNS_ADMIN key will be used. The only thing that takes precedence over this key is a TNS_ADMIN environment variable.

If SQL*Plus works okay and your application cannot connect, then you must either be using an incorrect LogonDatabase in your application, or it is using a different Oracle Home (which is unlikely if you have just 1 Oracle Home).

Another department installed their Oracle client soft. We checked this item immediately after the problem occured.

Both SQL*Plus and your application are standard SQL*Net / Net8 Client applications, so there should not be any difference.

right, except of the community string.

 
Back
Top