Recently we encountered a problem while transitioning some of our clients to Windows 7. There are some line of business applications that run on Oracle Forms 6i and clients need to enter persian, arabic, hebrew and other languages. When Oracle forms are installed, the language setting is set as following in the registry:
For 32bit machines -
Key: HKEY_LOCAL_MACHINE\SOFTWARE\Oracle
Value Name: NLS_LANG
Value: AMERICAN_AMERICA.WE8ISO8859P1
For 64bit machines -
Key: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Oracle
Value Name: NLS_LANG
Value: AMERICAN_AMERICA.WE8ISO8859P1
this by default does not support UTF8 encoding.
Solution:
To get the languages working, change the value of NLS_LANG to
AMERICAN_AMERICA.UTF8
beware, this may break other forms that are not designed well and cannot take UTF8 so test before implementing it to all