DroidDB Tip of the Month

DroidDB® Tip for April 2013

The mEnable Server

When the end-user wants to synchronize, they press the mEnable synchronize button on the handheld (or run a macro that does an mEnable synchronize). This causes the handheld (the mEnable client) to look for an mEnable server. It communicates with it via a TCP/IP connection (not by serial communication over the USB cable).

There are two candidates for the mEnable server.

  1. One candidate is the paid version of the mEnable server product. This installs as a service on some windows computer. It runs in the background (as a service) and allows multiple handhelds to connect and synchronize. Note that, when the paid version of the mEnable server is running as a service, it is logged in as SYSTEM, not as you. Why this is important is addressed below.
  2. The other candidate is a special version of the mEnable server (a redistributable component of the DroidDB Business Edition). To run the special version of the mEnable server, either run DroidDB on the desktop and select FILE | SYNCHRONIZE | GO or run c:\Program Files\SYWARE DroidDB\DDB_SYNC.exe. This will allow just one handheld to connect and synchronize. After the special version of mEnable connects and synchronizes that one handheld, it takes itself down. Note that, when the special version of the mEnable server is running, it is logged in as you. Why this is important is addressed below.

Notes:

  • After installing the mEnable Server, you should verify that it has been installed as a service (ocasionally, the firewall or anti-virus software prevents this.) Go to the services control panel and verify that there is an entry for "SYWARE mEnable." If not, all you have to do is select START | PROGRAMS | SYWARE MENABLE | INSTALL SERVICE on the mEnable Server machine.
  • By default, the mEnable Server listens for client requests on port 20225. If your server has a firewall, you must punch a hole for this port.
  • The form designer uses FILE | SYNCHRONIZE to specify the ODBC connection settings while working on the development machine. These settings are stored on the handheld. Early on in a synchronization, the handheld sends these to the mEnable server so the server can make its ODBC connection. If your mEnable Server machine is not the same computer as the one you design your forms on, you have to be sure that the ODBC connection settings are valid on the mEnable server machine. In particular, if your mEnable Server machine is not the same computer as the one you design your forms on:
    • You specify the "Desktop Datasource" while working on your development machine...but it is used on the machine the mEnable server is running on. So, if you specify a "Desktop Datasource" called "My Datasource" while working on the development machine, it is up to you to make sure there is a "My Datasource" on the mEnable server machine.
    • You specify the "Desktop Database" while working on your development machine...but it is used on the machine the mEnable server is running on. So, if you specify a "Desktop Database" called "G:\MyStuff\MyDatabase.mdb" while working on the development machine, it is up to you to make sure that the development machine's G: drive is the same as the mEnable server machine's G: drive.
  • The paid version of the mEnable Server runs as a service. Consequently, when creating a "Desktop Datasource" to be used on a machine that runs a paid version of the mEnable server, it should be set up as a System DSN (not a User DSN nor a File DSN), since services can only "see" System DSN's.
  • The paid version of the mEnable Server runs as a service and the service logs on as SYSTEM. Care must be taken when a "Desktop Database" is specified since mapped drives (like the G: drive in the example above) probably will not exist from the perspective of the SYSTEM logon.

 

Back to List »

Visit our store

Top rated! I needed a solid database application development tool for mobile devices. I chose DroidDB for Android OS because it provided a way to get a strong product to market quickly. DroidDB is relational, gives me control over form layout, handles macros, and supports events. It works on all Android versions I have tried and is a great companion product to SYWARE’s VisualCE.

Mark Read, President
SyntegraTech, Inc.

signup for our newsletter