Skip to main content
Version: 6.11

Patriot Configuration Files

Each of the Patriot component programs has its own configuration file containing application and system settings.

The files are located inside the Patriot install directory for each component, typically under C:\Program Files (x86)\Patriot Systems Ltd

  • Patriot Data Service, in the PatriotService.exe.config file
  • Patriot Task Service, in the CSMService.exe.config file
  • Patriot Client, in PatriotV6Client.exe.config
  • Patriot Reporting Components, in ReportRunner.Settings.config and ReportViewer.Settings.config
note

Only application settings can be permanently edited in these files, the main config files (ReportRunner.exe.config and ReportViewer.exe.config) are overwritten in each Patriot update so (permanent) user changes are not possible.

Special Characters

When editing the configuration file to change setting values, some special characters must be escaped / encoded, or the configuration file will be detected as invalid.

Special CharacterReplacement
""
''
<&lt;
>&gt;
&&amp;

For Example, if your SQLPassword is P&t>iot you would enter:

<setting name="SQLPassword" serializeAs="String">
<value>P&amp;t&gt;iot&apos;</value>
</setting>

Server / Workstation GC Mode

The Microsoft .NET Framework can run programs in two different modes - Workstation or Server. It is recommended to use the server mode for the data service, especially if using the Concurrent Signal Processing module.

Enabling Server GC Mode

To enable Server GC Mode, edit the DataService config file and add/update the following setting:

<configuration>
...
<runtime>
...
<gcServer enabled="true"/>
...
</runtime>
...
</configuration>

Assembly Bindings

Each of the Patriot component programs has its own configuration file which includes settings that control assembly loading rules. As of Patriot 6.9, binding redirects are mostly automated, however some manual configuration may be needed if the existing configuration files don't contain the required settings.

Assembly bindings defined in the Patriot configuration file instruct Patriot to use the correct version of dependent assembly files. If your assembly bindings are incorrect or missing you will see assembly binding errors in the Windows event log. E.g. if you attempt to use the Patriot ICA or API add-on module without having the correct Data Service configuration you will see an error in the event log when you attempt to browse to your ICA website or access the API:

Could not load file or assembly 'System.Net.Http.Formatting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference

Automatic Binding Redirection

As of Patriot 6.9, assembly redirects are no longer included directly in the config files, but instead stored in a separate file supplied by the update. This will ensure the correct assembly bindings are automatically used. To ensure this works, make sure your config files contain this reference as follows:

<configuration>
...
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<linkedConfiguration href="file:[Path to installation folder]AssemblyBinding.config" />
</assemblyBinding>
...
</configuration>

This same section will need to be copied into each of the following configuration files:

  • Patriot Data Service
  • Patriot Task Service
  • Patriot Client
note

The Patriot Reporting Components config files do not need this reference.

In each case, replace the [Path to installation folder] section with the full path to the current component

You will likely need administrative privileges to write to these files. After making any changes to a component program configuration file you must restart that component program for the changes to take effect. It is recommended when editing configuration files that you copy and paste directly from this document because any minor typing error will result in the configuration file being ignored at program startup.

For more information, see the Patriot Version 6.9 Upgrade Documentation