Three client architectures delivering the same solution to different operational contexts

Platform → UI Technology → Clients | WebAssembly | Symbols | Drawing | Responsive | Layouts


Client Architecture Overview

FrameworX provides three client types addressing different operational requirements: Desktop clients for control rooms, Web clients for browser access, and Mobile clients for workforce mobility. All run the same solution with technology-appropriate adaptations.

Client Types, deployment options:

  • Web & Mobile  (HTML5) - Browser-based, not install required
  • Desktop -  Rich Client (installed) or Smart Client (ClickOnce)
  • API Clients - API-based data access


Client Comparison

FeatureRich ClientSmart ClientWeb HTML5
PlatformWindows/LinuxWindows onlyAll platforms
InstallationLocal installClickOnceNone
PerformanceHighestHighStandard
Task SwitchingCan blockCan blockCannot block
UpdatesManualAutomaticImmediate
RedundancyAutomaticAutomaticManual
ThreadingMultiMultiSingle
Port3101 (WCF)3101 (WCF)80/443 (HTTP)

Rich Client

Desktop application with maximum control and performance.

Client Types - Rich Client

Characteristics

  • WPF-based on Windows
  • Runs as standalone application
  • Full Windows integration
  • 64-bit on top of NET. 4.8

Advantages

  • Block Windows task switching (Ctrl+Alt+Del)
  • Automatic redundant server failover
  • Highest performance
  • Full security control

Requirements

  • FrameworX installation
  • Windows OS
  • Network access to server

Deployment

Program: TRichClient.exe (64-bit)
Port: 3101 (configurable)
Technology: WPF

Smart Client

One-click deployment with automatic updates.

Client Types - Rich Client

Characteristics

  • ClickOnce technology
  • Self-updating from server
  • No local installation
  • Runs like Rich Client

Advantages

  • Single-click deployment
  • Automatic updates
  • No IT deployment needed
  • Same features as Rich Client

Requirements

  • .NET Framework 4.8
  • Compatible browser (*)
  • Windows OS only

Deployment

http://<ServerIP>/smartclient
or
https:// if certificate is installed

Browsers Compatible with ClickOnce

Historically, only Internet Explorer (IE) ever had built-in ClickOnce support.

  • ClickOnce was a Microsoft deployment technology (introduced with .NET 2.0) that allowed launching and installing Windows apps directly from a link (.application file).

  • IE could recognize and execute those files without add-ons.

Browsers that require a plugin/extension

  • Microsoft Edge (Legacy / Chromium)

    • No native support.

    • Possible with the “ClickOnce for Microsoft Edge” extension (Microsoft-published).

    • Extension is available in the Microsoft Edge Add-ons store.

  • Google Chrome

    • No native support.

    • Possible with the “Meta4 ClickOnce Launcher” or “ClickOnce for Google Chrome” extension.

    • Extensions pass the .application file to the local ClickOnce handler.

  • Mozilla Firefox

    • No native support.

    • Possible with the “FFClickOnce” add-on (popular for years).

  • Other browsers (Opera, Safari, etc.)

    • Generally no plugin support for ClickOnce.

    • Workarounds involve downloading the .application file manually and running it with the Windows ClickOnce runtime.

    • Not recommended, the RichClient installation is better in this scenario, or the web client.

Web & Mobile Clients

Web and Mobile clients compile .NET code to WebAssembly, running in any modern browser without plugins. They share the same technology but optimize for different interactions:

Note: "Mobile" refers to mobile workforce scenarios (tablets, phones, field devices), not exclusively smartphones.

Browser-based access with zero installation.

Client Types - WebAssembly Client

Characteristics

  • WebAssembly technology
  • Cross-platform compatible
  • Responsive design
  • Touch support

Advantages

  • No installation required
  • Works on any device
  • Immediate updates
  • Platform independent

Limitations

  • Cannot block task switching
  • Single-threaded execution
  • HTTPS communication overhead
  • No direct local file access

Deployment

http://<ServerIP>/html5
or
https:// if certificate is installed


Deployment Considerations

Client Type Deployment Considerations

Rich Client Deployment

Best for:

  • Control rooms
  • Dedicated operator stations
  • High-security environments
  • Maximum performance needs

Smart Client Deployment

Best for:

  • Office environments
  • Remote Windows users
  • Frequent updates
  • Simplified IT management

Web Client Deployment

Best for:

  • Mobile access
  • Cross-platform needs
  • Occasional users
  • Internet/WAN access

Security Features

FeatureRichClientSmartClientWebClent
User Authentication(tick)(tick)(tick)
Task Switch Block(tick)(tick)(error)
Encrypted Comm(tick)(tick)HTTPS
Sandbox Mode(error)(error)(tick)
Certificate Auth(tick)(tick)(tick)

Display Rendering Pipeline

All clients receive identical display definitions but render using platform-appropriate technologies:

Server Redundancy

Desktop clients implement automatic failover:

  • Primary server monitored continuously
  • Automatic switch on failure (< 1 second)
  • No operator intervention required
  • Seamless return when primary recovers

Web/Mobile clients require external load balancers or manual server selection due to browser security restrictions preventing direct socket control.

Deployment Guidelines

Use CaseRecommended ClientReasoning
Control RoomRich ClientTask switching block, maximum performance
Engineering StationSmart ClientAuto-updates, full functionality
Management OfficeWeb ClientZero installation, IT friendly
Field OperationsMobile ClientTouch interface, works on tablets
Remote AccessWeb ClientWorks through firewalls, HTTPS

Unified Development Model

Despite different runtime technologies, development remains unified:

  • Single display configuration for all clients
  • Same tag database connections
  • Identical scripting (C# compiled appropriately)
  • Unified security model

The system determines which displays appear on each client type, enabling optimized experiences without duplicate development.


Auto-Start Configuration

Windows Auto-Start

Create shortcut in Startup folder:

Rich: C:\Program Files\FrameworX\TRichClient.exe
Smart: http://server/TSmartClient.application
Web: http://server/html5/index.html

Command Line Options

TRichClient.exe /server:192.168.1.100 /solution:MyProject

Performance Guidelines

Rich/Smart Clients

  • Multi-threaded execution
  • Local graphics acceleration
  • Binary communication
  • Cached resources

Web Clients

  • Single-threaded JavaScript
  • Browser rendering engine
  • HTTP overhead
  • No local caching

Troubleshooting

Connection Issues:

  • Verify server port access
  • Check firewall settings
  • Test network connectivity
  • Review server logs

Update Problems:

  • Clear browser cache (Web)
  • Reset ClickOnce cache (Smart)
  • Reinstall client (Rich)

Performance Issues:

  • Check network latency
  • Monitor server load
  • Verify client resources
  • Review display complexity



In this section...