Icon Registry Entries

Location
ODBC data sources are stored in the registry in Windows. The location of both user and system data sources is detailed below:

Data Source TypeLocation
User DSNHKEY_CURRENT_USER\Software\ODBC\ODBC.INI\<Data Source Name>
System DSNHKEY_LOCAL_MACHINE\Software\ODBC\ODBC.INI\<Data Source Name>

Also, a list of data sources defined on the system can be found here:

Data Source TypeLocation
User DSNHKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ODBC Data Sources
System DSNHKEY_LOCAL_MACHINE\Software\ODBC\ODBC.INI\ODBC Data Sources

64-bit Windows

Under 64-bit Windows, the above registry keys/values are for 64-bit DSNs only, and are only configurable via the 64-bit ODBC Administrator that is accessible from the Control Panel. In order to configure 32-bit DSNs on 64-bit Windows, one must use the 32-bit ODBC Administrator located here:

<WindowsInstallDir>\SysWoW64\odbcad32.exe

where <WindowsInstallDir> is the base Windows installation directory, usually c:\Windows.

In addition, 32-bit ODBC Administrator uses the special 32-bit registry values here for data sources:

Data Source TypeLocation
User DSNHKEY_CURRENT_USER\Software\Wow6432Node\ODBC\ODBC.INI\ODBC Data Sources
System DSNHKEY_LOCAL_MACHINE\Software\Wow6432Node\ODBC\ODBC.INI\ODBC Data Sources

and here for a list of data sources:

Data Source TypeLocation
User DSNHKEY_CURRENT_USER\Software\Wow6432Node\ODBC\ODBC.INI\<Data Source Name>
System DSNHKEY_LOCAL_MACHINE\Software\Wow6432Node\ODBC\ODBC.INI\<Data Source Name>

DBISAM Data Source Settings
The following registry values are defined under the <Data Source Name> key in the registry (see above):

NameDescription
ConnectionTypeThis string value is set to either "Local" if the data source is accessing the database (also called a catalog) directly, or "Remote" if the data source is accessing the database remotely via a database server.
CatalogNameThis string value is the name of the database, or catalog, being used for the data source. The name can be either a directory name, if the data source is configured for local access (ConnectionType="Local"), or a database name, if the data source is configured for remote access to a database server (ConnectionType="Remote").
ReadOnlyThis string value is set to "True" if the data source is read-only, and "False" if the data source is read-write.
DriverThis string value is always set to the directory and file name of the DBISAM ODBC driver itself.
ForceBufferFlushThis string value controls whether DBISAM forces the operating system to flush any buffered writes to disk immediately after the data is written to the operating system. If it is "False" (the default), then DBISAM will leave the flushing up to the operating system. If it is "True", then DBISAM will force a buffer flush after every write.
StrictChangeDetectionThis string value controls whether DBISAM checks for changes every time it performs any read operation. If it is "False" (the default), DBISAM will use lazy change detection, which causes the engine to only check for changes by another user whenever it has to read from disk. If it is "True", DBISAM will check for changes before every read operation. This change detection configuration only applies to read operations - write operations always use strict change detection.
LockRetryCountThis string value controls the number of lock attempts DBISAM should make before issuing an error. The default is "15".
LockWaitTimeThis string value controls the amount of time (in milliseconds) to wait between each lock attempt. The default is "100".
PrivateDirectoryThis string value specifies the directory for any temporary files that DBISAM may create for query results, altering the structure of tables, or other operations. This setting must be a valid directory or DBISAM will issue errors when it tries to create any needed temporary files.
UIDThis string value specifies the user ID to use for accessing a remote DBISAM database server. This value is only used when the ConnectionType registry value is set to "Remote". This value is encrypted using a lightweight XOR encryption method to prevent prying eyes, but it is not recommended that you rely on it for serious security. If this value is left blank, the user will be prompted for the user ID when accessing the database server.
PWDThis string value specifies the password to use for accessing a remote DBISAM database server. This value is only used when the ConnectionType registry value is set to "Remote". This value is encrypted using a lightweight XOR encryption method to prevent prying eyes, but it is not recommended that you rely on it for serious security. If this value is left blank, the user will be prompted for the password when accessing the database server.
RemoteEncryptionThis string value controls whether the connection to a remote DBISAM database server will be encrypted. If it is "False" (the default), then the connection will not be encrypted. If it is "True", then the RemoteEncryptionPassword registry value (see below) will specify the password to use.
RemoteEncryptionPasswordThis string value specifies the password to use for encrypting all requests and responses to and from a remote DBISAM database server when the connection is encrypted (see RemoteEncryption registry value above). This value is encrypted using a lightweight XOR encryption method to prevent prying eyes, but it is not recommended that you rely on it for serious security. The default value is "elevatesoft".
RemoteHostNameThis string value specifies the host name of the machine that is running the remote DBISAM database server that you are accessing. Either the RemoteHostName or RemoteIPAddress registry values must be populated along with the RemoteService or RemotePort registry values in order to correctly access a remote DBISAM database server. The default value is "".
RemoteIPAddressThis string value specifies the IP address of the machine running the remote DBISAM database server that you are accessing. Either the RemoteHostName or RemoteIPAddress registry values must be populated along with the RemoteService or RemotePort registry values in order to correctly access a remote DBISAM database server. The default value is "127.0.0.1".
RemoteServiceThis string value specifies the service name of the remote DBISAM database server that you are accessing. Either the RemoteService or RemotePort registry values must be populated along with the RemoteHostName or RemoteIPAddress registry values in order to correctly access a remote DBISAM database server. The default value is "".
RemotePortThis string value specifies the port number of the remote DBISAM database server that you are accessing. Either the RemoteService or RemotePort registry values must be populated along with the RemoteHostName or RemoteIPAddress registry values in order to correctly access a remote DBISAM database server. The default value is "12005".
RemoteCompressionThis string value specifies the amount of compression to use when communicating with a remote DBISAM database server. The default value is "0", for no compression. A value of "1" to "10" specifies the amount of compression from fast, but not very thorough, to very thorough, but not as fast.
RemotePingThis string value controls whether pinging will be used to keep the connection to a remote DBISAM database server alive, even when the connection is inactive for long periods of time. If it is "False" (the default), then pinging will not be used. If it is "True", then the RemotePingInterval registry value (see below) will specify how often the pinging will occur.
RemotePingIntervalThis string value specifies the interval (in seconds) to use when pinging has been enabled for the connection to a remote DBISAM database server (see RemotePing registry value above). The default value is "60" seconds.
RemoteReadAheadThis string value specifies the default number of records to use for forward-only cursors that use a rowset size of 1. The default value is "50".
TablePassword*These string values are numbered as "TablePassword1", "TablePassword2", etc. and are used as passwords for opening encrypted tables. These values are encrypted using a lightweight XOR encryption method to prevent prying eyes, but it is not recommended that you rely on it for serious security.
MRUDatabase*These string values are used by the DBISAM ODBC Driver configuration wizard dialog for storing the most-recently-used database names.
MRUPrivateDirectory*These string values are used by the DBISAM ODBC Driver configuration wizard dialog for storing the most-recently-used private directory names.
Image