1a) Install Oracle 21 XE into c:\oracle\product\21.0.0 on a machine without any other Oracle server or client installed.
1b) Install Oracle 18 XE into c:\oracle\product\18.0.0 on a machine without any other Oracle server or client installed.
2) Create a new 64-bit-Windows VCL application (use ODAC 12.2.0).
3) Use unit OraServerEnumerator.
4) Drop a TMemo.
5) Create FormCreate-Event.
6) Insert
with TOraServerEnumerator.Create do
try
GetServerList(Memo1.Lines);
finally
Free;
end;
7) Compile
8a) Run on 1a)
8b) Run on 1b)
9a) Result: empty memo (to be fixed).
9b) Result: memo shows at least XE (and all other items in tnsnames.ora).
Hint:
c:\oracle\product\21.0.0\dbhomexe\network\admin
contains none of this: listener.ora sqlnet.ora tnsnames.ora
c:\oracle\product\21.0.0\homes\oradb21home1\network\admin
is the new location of these files created by setup.
See
https://docs.oracle.com/en/database/oracle/oracle-database/21/ntdbi/about-oracle-base-home.html