Professional OPC
Development Tools

logos

Online Forums

Technical support is provided through Support Forums below. Anybody can view them; you need to Register/Login to our site (see links in upper right corner) in order to Post questions. You do not have to be a licensed user of our product.

Please read Rules for forum posts before reporting your issue or asking a question. OPC Labs team is actively monitoring the forums, and replies as soon as possible. Various technical information can also be found in our Knowledge Base. For your convenience, we have also assembled a Frequently Asked Questions page.

Do not use the Contact page for technical issues.

issues when using the QuickOPC A&E Client to access and subscribe to an OPC A&E Server on a remote machine

More
14 Nov 2018 08:12 #6853 by support
I still wonder whether a DCOM configuration and/or the parameters settings in QuickOPC cannot resolve it. I understand that the Visual OPCTest works OK, but that does not completely rule out the possibility.

For initial tests like this (not for production), do you have the security "wide open"? - as e.g. in: www.opclabs.com/resources/technology-opc/opc-videos/opc-dcom .

Regards

Please Log in or Create an account to join the conversation.

More
13 Nov 2018 08:02 #6846 by usmanshahid
So the demo apps provided with QuickOPC are for OPC-DA, not OPC-A&E. I do have the QuickOPC Kit DA server as well as another DA server (IntelliMAX.OPC.DAServer.1). The following are my findings:

1. I can read the values from QuickOPC Kit DA Server using the EasyOPC.NET Demo Application remotely by clicking on the `Read item` button.
2. I cannot read values from IntelliMAX.OPC.DAServer.1 using the EasyOPC.NET Demo Application remotely by clicking on the `Read item` button. The Exception box shows: `Exception from HRESULT: 0x80040200`
3. I cannot subscribe to the QuickOPC Kit DA Server items from the demo application by clicking on the `Subscribe Item` button, the Exception box shows `Access is denied`.
4. I cannot subscribe to the IntelliMAX.OPC.DAServer.1 items from the demo application by clicking on the `Subscribe Item` button, the Exception box shows nothing but there is no changing value in the Value box.

And like I specified before, I've also tried Visual OPCTest Tracer DEMO to subscribe to both i.e. QuickOPC Kit Event Server and another server I'm running (IntelliMAX.OPC.AlarmServer.1). The demo application seems to easily subscribe and fetch the alarms from both IntelliMAX.OPC.AlarmServer.1 and QuickOPC Kit Event Server:





I should also specify that it's only the remote subscription that's problematic. Subscription to servers running on the same machine works fine.
Attachments:

Please Log in or Create an account to join the conversation.

More
10 Nov 2018 15:33 #6845 by support
Thank you.

I have asked because it is common that Windows Service, running under a specific account, does not work "out of the box" even when other OPC applications do work - because the DCOM configuration has to be different.

But I understand that in your case, the console app behaves the same.

I am running out of options here. I still believe this has to with the DCOM configuration either in your system or its settings in the QuickOPC.

Have you attempted OPC Data Access from a QuickOPC application on the same computer to the same server computer, for example using one of the demo apps that comes with QuickOPC? And does that work?

Regards

Please Log in or Create an account to join the conversation.

More
09 Nov 2018 10:47 #6842 by usmanshahid
I have two kinds of applications:

1. A console application, I run it through a Command Prompt initiated in Administrator mode.
2. A Windows Service which runs under the "LocalSystem" account.

The firewall is disabled on both the source and the target machines.
The behavior for both of these is same.

Please Log in or Create an account to join the conversation.

More
09 Nov 2018 08:57 #6841 by support
This is weird.

What kind of application is your project please? (console app, Windows Forms, WPF, Windows Service, Web app, Web service, etc.)

Thank you

Please Log in or Create an account to join the conversation.

More
08 Nov 2018 08:15 #6837 by usmanshahid
Hi, I tried this too, replaced the ProgId with CLSID, still the same error:

System.UnauthorizedAccessException: Access is denied

Please Log in or Create an account to join the conversation.

More
06 Nov 2018 09:13 #6831 by support
Hello,

the problem might be 1) when the client is resolving the ProgID of the remote server using OPCEnum, or 2) later when it is trying to access the actual OPC Server.

In order to rule out #1, can you please replace
"OPCLabs.KitEventServer.2"
in your QuickOPC calls by
"{68BE808F-C895-47BD-A3F0-701CD7ABCB26}"
Thank you

Please Log in or Create an account to join the conversation.

More
05 Nov 2018 07:54 #6823 by usmanshahid
Thankyou for the reply. I've tried all of the configuration combinations above but the problem remains. Every subscription to the OPCLabs KitEventServer results in System.UnauthorizedAccessException: Access is denied.

Please Log in or Create an account to join the conversation.

More
02 Nov 2018 08:39 #6818 by support
The "Not implemented" error probably comes from the OPC server itself; it may be related to some OPC method that we call and the server does not implement.

Is there a way to obtain (a demo version of) the OPC Server, for us to investigate here?

Regards

Please Log in or Create an account to join the conversation.

More
02 Nov 2018 08:36 #6817 by support
The "Access is denied" errors may be related to DCOM configuration. If another OPC client from the same machine works fine, it may have to do with the DCOM settings inside QuickOPC itself. They are a bit problematic because it runs under .NET, which tries to control the same settings as well.

Please try following (6) combinations at the beginning of your program, to see if any of them works. Note that the settings can only be made once in the process lifetime, before any OPC operation is attempted; you cannot put the combinations into the same program and try to test them all in a sequence.
EasyAEClient.SharedParameters.ClientParameters.UseCustomSecurity = false;
EasyAEClient.SharedParameters.ClientParameters.TurnOffActivationSecurity = false;
EasyAEClient.SharedParameters.ClientParameters.UseCustomSecurity = false;
EasyAEClient.SharedParameters.ClientParameters.TurnOffActivationSecurity = true;
EasyAEClient.SharedParameters.ClientParameters.UseCustomSecurity = true;
EasyAEClient.SharedParameters.ClientParameters.TurnOffActivationSecurity = false;
EasyAEClient.SharedParameters.ClientParameters.TurnOffCallSecurity = false;
EasyAEClient.SharedParameters.ClientParameters.UseCustomSecurity = true;
EasyAEClient.SharedParameters.ClientParameters.TurnOffActivationSecurity = false;
EasyAEClient.SharedParameters.ClientParameters.TurnOffCallSecurity = true;
EasyAEClient.SharedParameters.ClientParameters.UseCustomSecurity = true;
EasyAEClient.SharedParameters.ClientParameters.TurnOffActivationSecurity = true;
EasyAEClient.SharedParameters.ClientParameters.TurnOffCallSecurity = false;
EasyAEClient.SharedParameters.ClientParameters.UseCustomSecurity = true;
EasyAEClient.SharedParameters.ClientParameters.TurnOffActivationSecurity = true;
EasyAEClient.SharedParameters.ClientParameters.TurnOffCallSecurity = true;

Please Log in or Create an account to join the conversation.

Moderators: support
Time to create page: 0.073 seconds