System INIT LANGDRIVER Setting affects another applications


2004-12-28 03:36:37 PM
off-topic12
Hello, I have a program which uses MS Access Database over a ODBC driver.
When installing the program on the client machine, the process copies new
xxx.mdb database with some permanent pre-defined data in windows-1250
encoding (I'm from Czech Republic). All works fine, new data entered by user
are stored to the database in windows-1250 enc as well. Note that I don't
specify any LANGDRIVER in my BDE alias.
The problem comes when another application on the computer sets the
System-Init-LANGDRIVER to it's own needed
([HKEY_LOCAL_MACHINE\SOFTWARE\Borland\Database Engine\Settings\SYSTEM\INIT]
"LANGDRIVER"="czechw" - which is DOS852 CodePage). Then the old data in
the database are bad encoded and the new are good.
The problem is even bigger because my application exports all data to a
server in the internet and then they are presented on HTML pages (which are
in windows-1250). There, the new data are OK in windows-1250 and the old are
in "Central European DOS 852" encoding.
It's big problem for me. Is it possible to disable some way the character
conversion on the fly? I don't wan the BDE to convert my data in the
database to the character encoding in the INIT setting. Or could I specify
the encoding to convert the data to without corrupting the other
application?
Database Data: Conversion on the fly
Out Data
windows-1250 ....
CP852
??? .....
windows-1250
Please help.
Tnanks.