QuickOPC COM clients initialize data-access timeouts when an EasyDAClient starts. To change the behavior used by ReadItemValue when an OPC server is inaccessible, choose either a registry-based initial value or a runtime value on that client’s Timeouts object.
Understand the timeout precedence
At startup, EasyDAClient looks for timeout values in a shared registry location. When a value exists, the component uses it as that timeout’s initial value. When no values exist, it uses internal defaults described in the evidence as mostly one minute; this does not establish that every timeout defaults to one minute.
| Control point | When applied | Scope supported by the evidence |
|---|---|---|
| Internal default | No corresponding registry value is present | Fallback initialization |
EasyOPCOptions |
Before EasyDAClient initializes |
Registry-based initial value |
EasyDAClient.Timeouts |
From application code | Runtime timeout configuration for that client |
Configure the initial COM timeout
Use the EasyOPCOptions utility installed with the product and available from the Start menu. Its product help file documents the available settings. The evidence does not identify the exact timeout member that governs ReadItemValue, so confirm the applicable setting in that documentation rather than changing an unrelated timeout.
- Open
EasyOPCOptionsfrom the Start menu. - Locate the documented timeout associated with the required read or inaccessible-server behavior.
- Set the required value and apply the configuration.
- Create or restart the COM application so a newly initialized
EasyDAClientcan load the registry value.
Override the timeout in application code
After initialization, access the Timeouts property of the EasyDAClient and manipulate the required timeout from code. This provides application-level control after registry defaults have been loaded. No exact child property name, unit, or code syntax is present in the evidence, so those details must be taken from the COM reference for the installed QuickOPC release.
Verify inaccessible-server behavior
Run a controlled test with the target OPC server inaccessible and measure the elapsed time and returned error behavior from ReadItemValue. Recreate the client before testing a registry-based change. If results do not match the intended setting, verify that the correct timeout member was changed and determine whether runtime code overwrites its initialized value.
The evidence does not state a QuickOPC version, registry path, timeout unit, minimum or maximum value, or whether one timeout covers every connection and read phase. It also notes that .NET uses static properties instead of registry-based defaults; do not transfer the COM configuration procedure to a .NET client without checking the applicable API.
FAQ
How do I change the QuickOPC ReadItemValue timeout in COM?
Set the applicable initial timeout with EasyOPCOptions, or change it at runtime through the EasyDAClient.Timeouts object. Confirm the exact timeout member in the COM reference for the installed release.
What is the default EasyDAClient timeout?
When no registry value exists, EasyDAClient uses internal defaults described as mostly one minute. The evidence does not confirm that every timeout has that value.
Why did my EasyOPCOptions timeout change have no effect?
Registry values initialize the client at startup, so recreate or restart the EasyDAClient after applying the change. Also check whether application code later replaces the value through Timeouts.