<< Click to display Table of Contents >> Navigation: Channels > Dynamic Channels > Infoclient Options & Settings |
When applying Dynamic Channels, there are several Infoclient.ini options for handling the Infoclient's behaviour. First of all, it is generally possible to activate/deactivate the execution of Dynamic Channels on the client with the option UseDynamic. When using Dynamic Channels with Infoclients in a Terminalserver/Citrix environment, especially the options WatchProcesses, WatchConnections, DynamicPipe and DynamicPipeTimeout become important.
Activating / Deactivating Dynamic Channels
With the Infoclient.ini item UseDynamic=true/false you can activate/deactivate the execution of Dynamic Channels. The default setting for this option is true (Dynamic Channels are activated). If Dynamic Channels are deactivated (UseDynamic=false), then Dynamic InfoclientValues are still operational.
Monitoring the Processlist
The Dynamic Channel types diProcessRuns and diProcessRan can monitor the processlist of the operating system. If this monitoring is unwanted, then it can be deactivated by setting WatchProcesses=false and DynamicPipe=false in the Infoclient.ini. In this case, the types diProcessRuns and diProcessRan will always return false (Result '0') when used Dynamic Channels and Dynamic InfoclientValues as well.
Monitoring the Connectionlist
With diConnectedTo and diListen, there are two possibilities to check, if a client has established a connection. If you don't want to monitor the connections, you can switch off this functionality. This can be done by setting WatchProcesses=false and DynamicPipe=false in the Infoclient.ini. Now the types diConnectedTo and diListen always return false or rather '0'. This affects dynamic Channels and dynamic InfoclientValues.
Delegating the Execution of Dynamic Channels
When using Dynamic Channels on a computer where multiple instances of the Infoclient are running, e.g. on a Terminalserver/Citrix environment, then the execution of Dynamic Channels with types diProcessRuns, diProcessRan, diConnectedTo and diListen (processlist and network) can be delegated to the main Infoclient service. The main reason for doing so is that the execution of these Dynamic Channel types consume a small, but considerable amount of process power. In case a larger amount of Infoclients perform a related Dynamic Channel simultaneously (parallel), then the computer might experience a temporary performance-loss. By setting DynamicPipe=true in the Infoclient.ini, the execution of the queries related to processlist and network will be delegated to the main Infoclient service running on the affected computer. The related queries then will be performed sequentially by the main service and the main service will return the result to the initiating Infoclient instances after execution. By changing the execution from parallel to sequential, you can achieve a great reduction in process power. By default, the option DynamicPipe is activated (DynamicPipe=true). DynamicPipe also works on single-user workstations with a terminal environment like Windows Vista and Windows 7.
For a better handling of the DICV (diProcessRuns,diProcessRan,diConnectedTo,diListen) executions in queue of the DynamicPipe, it is possible to set a default-timeout for each execution with the item DynamicPipeTimeout in the Infoclient.ini. The unit of the assigned value is milliseconds, the default value is 1000 (1000 milliseconds = 1 second). If execution fails within the default-timeout, the main Infoclient service will return a false (Value '0') for the timed out operation.
Examples:
UseDynamic= WatchProcesses= DynamicPipe= DynamicPipeTimeout= |
Default setting. Dynamic Channels with processlist will work, processlist and network queries will be delegated to the DynamicPipe with an execution-timeout of 1000 milliseconds. |
UseDynamic= WatchProcesses=false DynamicPipe= DynamicPipeTimeout= |
Access to the processlist for Dynamic Channels and DICVs is deactivated, queries related to network will be delegated to the DynamicPipe with an execution-timeout of 1000 milliseconds. |
UseDynamic=false WatchProcesses=true DynamicPipe=false DynamicPipeTimeout=5000 |
Dynamic Channels are deactivated, DICVs can still access the processlist. Values of DynamicPipe and DynamicPipeTimeout are omitted. |
UseDynamic=true WatchProcesses=true DynamicPipe=false DynamicPipeTimeout=1000 |
Dynamic Channels and DICVs can access the processlist, queries are NOT sent to the DynamicPipe, the DynamicPipeTimeout is omitted. |
UseDynamic=true WatchConnections=false DynamicPipe=false DynamicPipeTimeout= |
Dynamic Channels are activated. There is no access to the established connections for dynamic Channels and DICVs. DynamicPipe and DynamicPipeTimeout are deactivated. |
WatchConnections |
WatchConnections=True/False (Default: True) |