From: Daniel Berger Date: 2007-06-26T22:24:36+09:00 Subject: Problem with rubyscript2exe, OCI8, registry Hi, Ruby 1.8.6 Rubyscript2exe 0.5.3 OCI8 1.0.0rc2 Windows XP Pro I wrote a program that uses DBI + OCI8. It compiles fine, but when I run the executable I get an NLS_LANG error from Oracle. This does not happen if I run it from the command line. env.c:257:in oci8lib.so: ORA-12705: invalid or unknown NLS parameter value specified (DBI::DatabaseError) from C:/DOCUME~1/djberge/eee/eee.ntm.exe.3/lib/oci8.rb:210:in `initialize' from C:/DOCUME~1/djberge/eee/eee.ntm.exe.3/lib/DBD/OCI8/ OCI8.rb:54:in `new' from C:/DOCUME~1/djberge/eee/eee.ntm.exe.3/lib/DBD/OCI8/ OCI8.rb:54:in `connect' from C:/DOCUME~1/djberge/eee/eee.ntm.exe.3/lib/dbi.rb:424:in `connect' from C:/DOCUME~1/djberge/eee/eee.ntm.exe.3/lib/dbi.rb:215:in `connect' from C:\DOCUME~1\djberge\eee\eee.ntm.exe.3\app\ntm.rb:16 from C:\DOCUME~1\djberge\eee\eee.ntm.exe.3\bootstrap.rb:77:in `load' from C:\DOCUME~1\djberge\eee\eee.ntm.exe.3\bootstrap.rb:77 The only way that can happen is if it's reading from the registry, because I definitely do NOT have an NLS_LANG environment variable set, though it's set in the registry to "NA" (North America). I tried several things - explicitly setting the NLS_LANG environment variable to nil, setting ORACLE_HOME and/or TNS_ADMIN explicitly, etc. However, the only thing that worked was to literally rename the NLS_LANG registry entry under HKEY_LOCAL_MACHINE/Software/Oracle. Why is that happening? Thanks, Dan