- Posts: 345
- Thank you received: 4
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.
- Forum
- Discussions
- QuickOPC-Classic in .NET
- Browsing, Browse Dialogs and Controls
- Exception: Cannot browse because the server is not compliant because it does not
Exception: Cannot browse because the server is not compliant because it does not
Using version 2022.2 I am able to browse RSLINX.
Thank you.
Mike
Please Log in or Create an account to join the conversation.
I was able to install the product and reproduce the behavior, but I was not able to work around the issue using an external configuration. In fact, I cannot get my head around the fact that your DAItemDialog is apparently using the NetApi implementation, because the code you have sent only sets the flags on the EasyDAClient object, but in order for it to affect the DAItemDialog, it would have to set the flags in DAItemDialog.ClientSelector.InstanceParameters. Don't you also have code elsewhere that sets these?
Anyway, I proceeded to attempt to rectify the RSLinx version in NetApi implementation in version 2022.2. It now works for me, although, as I wrote, I cannot fully verify it because my RSLinx browsing tree is fairly poor (just two levels of branches, no items). If you know how to configure RSLinx (without the actual hardware) to provide some richer OPC address space with some real (although simulated/internal) items, I would be grateful if you let me know how to achieve that.
Please rebuild your application with the updated 2022.2 version (currently on our Web and NuGet) - build 507.1 or later, and retest.
Best regards
Please Log in or Create an account to join the conversation.
After you install the product, open UCME Configuration, click on Options > Settings > General and click on the OPC/DDE tab. Browse for the RSLINX OPC Server, add it to the list and click on Save.
Open the Alarms window (Design Alarms) and try browsing for a tag.
Let me know if you have any questions.
Thanks.
Michael
Please Log in or Create an account to join the conversation.
Sure. Please find the download link below. Lert me know if you have any questions.
spaces.hightail.com/receive/7jXWxNP5sH
Thank you.
Michael
Please Log in or Create an account to join the conversation.
Can you provide me with an installable/executable version of your software? What I want to do is to is to try to provide an external configuration to it that would make the RSLinx browsing work. But I do not want to go through too many "hops" between you and me. So if possible at all, I will check the right procedure on my side, and then send you the instructions that are verified to work.
Best regards
Please Log in or Create an account to join the conversation.
Thank you for your answer. Now our code supports both .NET APIs and Native Client APIs. The customer can customized this. See the code below.
No matter what we choose, we are getting the same result/error.
Please let me know how should I configure our application eternally or from inside.
Thank you.
Michael
If gNET_API Then ' .NET API Client - Dec-1-2022 V2020.6 b617
easyDAClient.InstanceParameters.EnableNetApiClient = True ' Dec-1-2022 V2020.6 b617
easyDAClient.InstanceParameters.EnableNativeClient = False ' Dec-29-2021 V2020.4 b401
Else ' Native API Client
easyDAClient.InstanceParameters.EnableNetApiClient = False ' Dec-1-2022 V2020.6 b617
easyDAClient.InstanceParameters.EnableNativeClient = True ' Dec-29-2021 V2020.4 b401
End If
Form1.DaItemDialog1.ServerDescriptor.MachineName = server_properties.server_comp_name
Form1.DaItemDialog1.ServerDescriptor.ServerClass = server_properties.RealServerName
If Form1.DaItemDialog1.ShowDialog() = DialogResult.OK Then
TagName = Form1.DaItemDialog1.NodeElement.ItemId
'Dim varType As VarType = easyDAClient.GetDataTypePropertyValue("", "OPCLabs.KitServer.2", "Simulation.Random")
Dim value As Object = Nothing
Dim exception As Exception = Nothing
Try ' Catch the exception May-29-2017
value = easyDAClient.GetDataTypePropertyValue(server_properties.server_comp_name, server_properties.RealServerName, TagName)
Catch ex As OpcException
exception = ex
sTagType = ""
DisplayOPCException(exception, server_properties, TagName) ' Feb-17-2022 b404 - display the exception
End Try
Please Log in or Create an account to join the conversation.
I was able to reproduce the originally reported error (OPC NET API error - result ID: E_UNKNOWN_ITEM_NAME; Cannot browse because the server is not compliant because it does not support the BROWSE_TO function.)
Please let me now summarize, and make a plan. Please correct if something is not right.
A. The problem we want to resolve is the error originally reported (OPC NET API error - result ID: E_UNKNOWN_ITEM_NAME; Cannot browse because the server is not compliant because it does not support the BROWSE_TO function.), because that is the one that appears with your software/your user. We can leave aside the other error mentioned later (OpcLabs.BaseLib.Runtime.InteropServices.ExtendedCOMException (0x80040112): Class is not licensed for use), because it only appears incidentally, with the demo app (not your app) - and I cannot reproduce it.
B. I have verified that the error (OPC NET API error - result ID: E_UNKNOWN_ITEM_NAME; Cannot browse because the server is not compliant because it does not support the BROWSE_TO function.) only appears when the QuickOPC's NetApi client is in use; with the Native client, RSLinx browsing appeared to work for me well (although I only have 2 levels of "branch" nodes - I do not know at this moment how to achieve getting any actual readable/writable items (leaves) - if you know that, please describe to me how to do it in RSLinx). I am quite confident that you can resolve the problem too by properly switching to Native client. If you have not managed it yet, I am ready to work with you to get rid of the error, by configuring your application eternally, or from inside.
C. As I wrote, RSLinx browsing is "special"; the NetApi client code does not work probably because it was not specifically tweaked to cope with RSLinx. I can have a look at whether it can be made to work (so that you do not have to switch to Native client), but it will take some time, and success is not guaranteed.
Best regards
Please Log in or Create an account to join the conversation.
Please see the download link below for the same RSLINX OPC Server.
Download link>
wetransfer.com/downloads/351ad9f1375f89895a9c1c9107c1d677202...39344a2c320221214111602/af3612
Thank you.
Michael
Please Log in or Create an account to join the conversation.
If that fails, then connect using your method.
Best regards
Please Log in or Create an account to join the conversation.
It is not a screen sharing connection.
Can I send you the instructions file?
Do you prefer to install the RSLINX OPC server on your computer?
Thanks,
Michael
Please Log in or Create an account to join the conversation.
- Forum
- Discussions
- QuickOPC-Classic in .NET
- Browsing, Browse Dialogs and Controls
- Exception: Cannot browse because the server is not compliant because it does not