Deployment Options

uniGUI supports all major deployment options available for the Windows platform.

1

Standalone Server

The simplest method of deployment is Standalone Server. In this mode, the application server runs directly like a desktop application. It is also the mode used for debugging the application. After running the application executable, it will minimize itself to the tray icon and will run until manually terminated by user. See the picture below:

uniGUI Standalone Server

A standalone application can be accessed from the browser by simply typing:

http://localhost:8077

Where 8077 is the dedicated port number which your application is bound to (listening port). It can easily be modified in the ServerModule.

Standalone mode is only recommended for debugging purposes. Since it runs as a desktop application it will be terminated as soon as the current user is logged off. Also, it will not start automatically after a restart. When your app runs in debug mode, you can set breakpoints, pause, go to cursor, and use all other advanced debugging features of the Delphi IDE to debug your application, just like any other VCL application. This method is not recommended for production environments, as it does not automatically run when the OS restarts and can be easily terminated by an unauthorized user intervention.

2

Windows Service

Another deployment method is Windows Service. By creating a uniGUI Windows Service application, you can deploy your application as a standard Windows Service application. This method is one of the preferred methods for production environments. Windows Services will run automatically each time the system restarts, guaranteeing the availability expected from a Web application.

A Windows Service application can be accessed from a browser like a Standalone server described above, meaning that each Windows Service application requires a dedicated port.

3

ISAPI Module

The last available deployment option is ISAPI Module. That technology was introduced by Microsoft IIS server and is based on Windows DLL technology. Other web servers such as Apache also support loading ISAPI modules.

ISAPI modules differ from the previous options in many aspects. Most importantly, they do not contain a built-in web server as opposed to Standalone Server and Windows Service. In ISAPI mode, the IIS server is the HTTP server and the ISAPI module executes its requests. You can create an ISAPI module application using uniGUI Wizards in the Delphi IDE. Compiling an ISAPI uniGUI application will output a DLL file instead of an EXE file. This DLL file must be deployed to the IIS server (described in detail in section ISAPI Module under Web Deployment section).

uniGUI DLLs support all IIS versions starting from IIS 5.1. ISAPI modules give developers the freedom of deploying many modules in the same server without needing a different port for each application. They also inherit the benefits of all advanced security features available in Microsoft IIS.

Running an ISAPI application is as easy as opening the following URL in your browser:

http://localhost/appdir/app.dll

If you have multiple apps under the same folder, you can call them by specifying a different DLL name:

http://localhost/appdir/app.dll

http://localhost/appdir/app2.dll

http://localhost/appdir/appaccount.dll