Installing the EMS Server or EMS Console Server on a Production Environment

From Appmethod Topics
Jump to: navigation, search

Go Up to Setting Up Your EMS Server

Go Up to Setting Up Your EMS Console Server

For a production environment, we recommend to set up the EMS Server and the EMS Console Server on a web server. We currently support Microsoft IIS Server.

You need the InterBase database and configuration file (.ini). To create these files for the first time follow the steps in EMS Database Requirements for a Production Environment and Configuring Your EMS Server or EMS Console Server.

The default path to the EMSServer.IB and EMSServer.ini files is:

  • C:\Users\Public\Documents\Embarcadero\EMS\
Note: Edit the ini file with the location to the database after creating it. Check that InterBase server is running.

Appmethod offers the DLLs to configure both the EMS Server and Console running on an IIS Server. To obtain a valid license, please contact an Embarcadero sales representative at

Locating Binary Files that EMS Server Requires

To run the EMS Server, you need the following files that you can find in the C:\Program Files (x86)\Embarcadero\Studio\17.0\bin folder:

  • borlndmm.dll
  • dbrtl230.bpl
  • EMSConsole.dll
  • EMSServer.dll
  • emsserverapi230.bpl
  • FireDAC230.bpl
  • FireDACCommon230.bpl
  • FireDACCommonDriver230.bpl
  • rtl230.bpl
  • FireDACIBDriver230.bpl
  • If you use FireDAC with a database management system other than InterBase, you need its FireDAC driver, such as FireDACSqliteDriver230.bpl for SQLite.

If you have created one or more packages of custom EMS resources, you must build them into package shared library files, which you need as well.

Microsoft IIS Support (Windows ISAPI)

Follow these steps to set up your EMS Server or Console running on a IIS Server.

Installing IIS 7

  1. Go to Control Panel > Programs and Features > Turn Windows features on or off.
    Note: This requires Privileged mode.
  2. Expand the Internet Information Services node of the Windows Features dialog box and then:
    • In Web Management Tools, check IIS Management Console.
    • In World Wide Web Services, expand the Application Development Features and then check ISAPI Extensions and ISAPI Filters.
    • In World Wide Web Services, expand the Common HTTP Features and make sure that Default Document, Directory Browsing, HTTP Errors, and Static Content are checked as well.
  3. Click OK to start the installation.

Checking IIS 7

  1. After installing IIS 7, open the URL http://localhost/ with a regular browser to make sure IIS is running and working.
    Note: You might need to check your firewall settings and add an exception for port 80 TCP traffic if necessary.

Creating a New Site

Add a new site:

  1. Go to C:\inetpub\wwwroot and create a new folder, for example emsconsole or emsserver.
  2. Paste the created EMSServer.ini file in Configuring Your EMS Server or EMS Console Server (default location is C:\Users\Public\Documents\Embarcadero\EMS\) on the folder.
  3. Copy the required binary files into the folder.
  4. (Only for the EMS Console) Copy the webresources folder from C:\Program Files (x86)\Embarcadero\Studio\17.0\ObjRepos\en\EMS to C:\inetpub\wwwroot\emsconsole.

Configuring EMSServer.ini File (only for the Console)

Edit the EMSServer.ini file as follows:

ResourcesFiles= C:\inetpub\wwwroot\emsconsole\

Note: You need to restart the IIS Server for the changes to take effect.

Configuring IIS 7 for the ISAPI DLL

  1. Open Internet Information Service Manager (requires Privileged mode).
    Tip: Enter Inetmgr on Search programs and files to open the IIS Manager.
  2. Select the folder (emsserver or emsconsole) under Sites > Default Web Site.
  3. Double-click Handler Mappings. This opens the Handler Mappings window.
  4. Select ISAPI-dll. It appears grayed.
  5. Click Edit from the Actions panel.
  6. On the Executable (optional) field enter the path to the dll file and click Open:
    • emsserver.dll, for example C:\inetpub\wwwroot\emsserver\emsserver.dll
    • emsconsole.dll, for example C:\inetpub\wwwroot\emsconsole\emsconsole.dll.
  7. Click OK, then click Yes.
  8. Click Edit Feature Permissions… in Actions panel.
  9. An Edit Feature Permission dialog opens.
  10. Check Execute.
  11. Click OK to commit the changes.

Enabling ISAPI Modules

  1. Click the root node from the Connections tree.
  2. Double-click ISAPI and CGI Restrictions.
  3. Click Edit Feature Settings … in the Actions panel.
  4. Check the Allow unspecified ISAPI modules option. This option allows any ISAPI dll to be executed under IIS. If you do not use this option, you need to specify a list of ISAPI DLLs explicitly.
  5. Click OK.

Enabling 32 bits ISAPI DLL on IIS 7 x64

This is only required if you are using IIS 7 x64 and you would like to run 32 bits ISAPI DLL on the IIS. If your ISAPI DLL and IIS7 are both x86 or both x64, you may skip this step.

  1. Click Application Pools node.
  2. Click DefaultAppPool item.
  3. Click Advanced Settings … from the Actions panel.
  4. An Advanced Settings dialog opens.
  5. Set Enable 32-bits Applications to True.
  6. Click OK to commit the changes.

Configuring IIS to Allow Cross Domain Requests

If your Web Server is hosting the Web files resources of an EMS Console Server and you want to allow HTTP requests from different domains, you need to set up the HTTP-Response-Header.

  1. Go to C:\inetpub\wwwroot and create a new folder, for example Web files folder.
  2. Paste the web files resources folders under webfilesresources.
    Note: You can not change the webresources folder name.
  3. Open Internet Information Service Manager.
  4. Select the Web files folder (webfilesresources) under Sites > Default Web Site.
  5. Double-click HTTP Response Headers.
  6. Click Add in the Actions panel.
  7. Enter one of the following configurations (Name: Value):
    • Access-Control-Allow-Origin: *
    • (More restrictive option) Access-Control-Allow-Origin: http://domain:port/
  8. Click OK to commit the changes.

Note: See Hosting the EMS Console Server Web Files Resources in a Web Server for more information about it.

See Also