Runtime requirements for synchronization on remote
machines
Support files required on remote
machine
If you do not install PowerBuilder or SQL Anywhere on remote
machines, you must copy the files listed in the following table to use
MobiLink synchronization with a PowerBuilder application. These files
must be copied to the system path on the remote machine or the directory
where you copy your PowerBuilder applications.
|
Required files |
Description |
|---|---|
|
PBDPL.dll, PBVM.dll, PBDWE.dll, |
PowerBuilder files that you can copy from the |
|
GDIPLUS.DLL, MSVCP100.DLL, |
Microsoft files that ship with PowerBuilder. For |
|
DBENG11.EXE, DBMLSYNC.EXE, DBSERV11.DLL, |
SQL Anywhere and MobiLink files that you can copy |
Registry requirements for a remote
machine
If you install SQL Anywhere on all remote machines that you use
with MobiLink synchronization, the required registry entries are
assigned automatically. If you copy SQL Anywhere and MobiLink files to a
remote machine, you must create the
HKEY_CURRENT_USERSOFTWARESybaseSQL Anywhere16.0 registry key and add
a “Location” string value that points to the parent directory of the
bin32 or bin64 subdirectory where you copied SQL Anywhere and MobiLink
files. (The code in the uf_runsync function of the nvo_appname_sync user
object appends “in32dbmlsync.exe” to the path that you assign to this
registry value.)
Objects generated by the MobiLink Synchronization wizard also
require registry entries to define the ODBC data source for a remote SQL
Anywhere connection. The following table lists the required registry
entries. You can create a REG file that installs these registry
entries.
|
Registry key |
Name of string value and data to assign |
|---|---|
|
HKEY_LOCAL_MACHINESOFTWAREODBCODBCINST.INISQL |
Driver = full path to DBODBC11.DLL Setup = full path to DBODBC11.DLL |
|
HKEY_LOCAL_MACHINESOFTWAREODBCODBCINST.INIODBC |
SQL Anywhere 16.0 = “Installed” |
|
HKEY_LOCAL_MACHINESOFTWAREODBCODBC.INIODBC Data |
dataSourceName = “SQL Anywhere 16.0” |
|
HKEY_LOCAL_MACHINESOFTWAREODBCODBC.INIdataSourceName |
Driver = full path to DBODBC11.DLL Userid = user name for remote database Password = password for remote database DatabaseName = remoteDatabaseName DatabaseFile = full path to remote database ServerName = remoteDatabaseName Start = CommLinks = “shmem” |
Using a file DSN instead of a registry
DSN
You can use a file DSN or a registry DSN for your remote database
connections. To avoid having to specify a fully qualified path, you can
copy file DSNs to a path specified by the ODBC registry key (typically
c:program filescommon filesODBCdata sources).
The following is an example of the contents of a valid file
DSN:
|
1 2 3 4 5 6 7 8 9 10 |
[ODBC] DRIVER=SQL Anywhere 16.0 UID=dba Compress=NO AutoStop=YES Start=dbeng16 -c 8M -zl -ti 0 EngineName=SalesDB_Remote DBN=SalesDB_Remote DatabaseFile=C:worksalesdbsalesdb_remote.db DatabaseName=SalesDB_remote |
The Datasource property of the MLSync object distinguishes a file
DSN from a registry DSN using these rules:
-
If the Datasource name ends with a .dsn file extension, it is
a file DSN -
If the Datasource name begins with “drive:” prefix where
drive is any alphabetic character, then it is a file DSN
File DSN location before EBFs are applied to older DBMS
versions
If you have not applied the latest EBFs to SQL Anywhere 10.0.0
or Adaptive Server Anywhere 9, dbmlsync looks in the current directory
for file DSNs when a full path is not specified — not in the path
specified by the ODBC registry key. The registry key is used by SQL
Anywhere 10.0.1 and later to locate file DSNs when their paths are not
fully qualified.