bg

OPC DCOM Errors: RPC Server Unavailable, Access Denied, IOPCServerList

Download a Free Trial Version. It allows you to try all features! Data logger plugins

OPC and DCOM on Windows 10, 11, Server 2019 and 2022: 1. OPC Core Components · 2. Users and permissions · 3. Firewall · 4. DCOM settings (dcomcnfg) · 5. Troubleshooting. Older systems: the Windows 7 and Server 2008 version of this part.

5. Typical problems

5.1 RPC server unavailable

This error means that it is impossible to establish a network connection to the RPC service. It may appear if you are connecting to a remote OPC server.

  1. If the error occurs during an attempt to get the list of OPC servers on the remote computer, you should check the firewall settings. The OpcEnum.exe file located in the Windows\System32 folder by default must be added to exceptions.
  2. You should make sure that inbound DCOM connections to port 135 are permitted. Windows Firewall has the inbound rule "Windows Management Instrumentation (DCOM-In)." You need to enable this rule.
  3. If the error occurs during an attempt to connect to the OPC server, you should make sure that the executable file of the OPC server is added to the Windows firewall exception list.
  4. Try to allow all incoming and outgoing connections to the remote IP address on the client computer. In Windows Firewall, you should add inbound and outbound "Custom" rules: All programs → All protocols and ports → Your remote IP address → Allow the connection.

5.2 Access denied

This error means that the current permissions are not enough to establish a connection. You should configure DCOM as described in section 4. If the link worked before a Windows update, see 5.5 below. If nothing helps, open DCOM connections for everyone.

5.3 IOPCServerList interface not found

  1. Double-check, if your application is 32-bit, you should install the 32-bit version of OPC Core Components too (for example, "OPC Core Components Redistributable (x86) 3.00.107.msi").
  2. You should restart the computer after you install the OPC Core Components.
  3. Sometimes, you may solve this problem if you set the "Authentication Level" to "Connect" in "Component Services → Computers → My computer → OpcEnum" (look here).

5.4 The OPC client can connect to a remote OPC server but does not receive information from the server

In the OPC Logger, this error is showed as "Advise: Access denied." This error means that the server can't send data to the client computer. Please, start dcomcnfg.exe on the client computer, go to "Component Services → Computers → My Computer," right-click over this node and configure the DCOM settings as shown below:

Properties

Fig. 1 DCOM settings

Restart the OPC client (OPC Logger, OPC Scada Viewer)

5.5 Access denied after a Windows update (DCOM hardening, KB5004442)

Since June 2022, and without any way to switch it off since March 2023, Windows refuses DCOM activation requests whose authentication level is below Packet Integrity. An OPC DA link that worked for years then fails with "access denied" (0x80070005) although nothing in the DCOM settings was changed. The System event log tells you which side is affected: event 10036 on the server computer names the rejected client, events 10037 and 10038 on the client computer name the application that uses a lower level.

  1. Install the current Windows updates on both computers first; an updated Windows client raises its authentication level by itself.
  2. For a program that sets a lower level in its own code, and for clients that are not Windows machines, open dcomcnfg on both computers, right-click My Computer and set Default Authentication Level on the Default Properties tab to Packet Integrity.
  3. Open the DCOM Config properties of the OPC server and of OpcEnum and make sure their authentication level is Default or Packet Integrity, not Connect or None.
  4. Update old OPC clients and servers; software that insists on a lower level cannot be fixed from the outside. Then restart both computers.

Test the DCOM setup, or avoid DCOM altogether

The free OPC Server Simulator is the quickest way to find out whether the problem is in DCOM or in the real OPC server: install it on the server computer and connect to it from Advanced OPC Data Logger or the OPC Scada Viewer on the client. If DCOM keeps breaking, take it out of the path: log the tags on the server computer and read them from a SQL database, or bridge the OPC DA server to OPC UA with Datatag Link, which needs no DCOM for remote clients.

Related articles: OPC DCOM Errors: RPC Server Unavailable, Access Denied, IOPCServerList

OPC and DCOM Configuration on Windows 10, 11, Windows Server 2019, 2022