A configuration file, view.exe.config, is used define various settings for use by ViewApp applications at run time. Most of these settings are used to to load different runtime dependent assemblies, and do not require any changes. The location of view.exe.config will vary, depending on the selected installation directory. The default location for the file is:
C:\Program Files (x86)\ArchestrA\Framework\Bin\ViewAppFramework
There are two settings in the view.exe.config that you may need to alter. One is used to enable single sign-in (SSO) for AVEVA OMI apps that are registered with the AVEVA Identity Manager (AIM), and the other is used to enable/disable layout multithreading. Configuration of the file is required to enable single sign-on via AIM, or to disable multi-threading if needed for compatibility with older controls that were not written to take advantage of multithreading.
Single Sign-on Configuration for ViewApps
Single sign-on for OMI ViewApps is configured by setting the values for three keys:
<add key="TokenServiceBase" value="https://your_token_server/IdentityManager" />
<add key="ClientId" value="your_client_id" />
<add key="Scope" value="openid profile system offline_access" />
These settings are commented out in the view.exe.config file, so you will need to uncomment them after setting the values.
Layout MultiThreading Configuration
By default, the OMI ViewApp is a multithreaded application, where each layout within the ViewApp runs on its own UI thread. Thus, each layout in a multi-screen ViewApp to runs on a unique thread. For example, a ViewApp configured for three screens will run on three separate threads when this setting is enabled. This is the default, and should not normally be changed.
However, if your ViewApp contains controls that are not optimized for multithreading, such as controls that were used for legacy AVEVA InTouch applications, then you can disable the setting to avoid unpredictable results at run time. With the setting disabled, all layouts in a ViewApp will run on the same thread. To disable multithreading, change the value for the key from true to false.
<add key="LayoutMultiThreadingModeEnabled" value="true" />