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.

Different QuickOPC runtime revisions on the same PC

More
29 Jun 2021 18:07 #9855 by lamar
1. I do not assign a drive letter (it is very common with VMWARE shared fiolders)
2. the folder contains just my app
3. QuickOPC is installed with the production installer to the own virtual hard drive of host and to the default location

I made a 45 seconds video to see what I do, including the installation.

vid.mp4

Attachments:

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

More
29 Jun 2021 17:01 #9854 by support
Hello,
this is quite interesting.

Some questions (to the case with QuickOPC 2021.2):

1. Do you assign a drive letter to the shared folder, and then run it using the path starting with that drive letter, or is it only using the UNC path form (\\share\folder) ?
2. What is the contents of the folder? Does it contain both your app and the QuickOPC assemblies, or just your app?
3. Related to the above, how was QuickOPC installed in this case? Using the installer, or by yourself? And to which location? On the "normal" disk inside the guest OS, or also "to the shared folder"?

Thank you

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

More
29 Jun 2021 08:43 #9844 by lamar
Thank you, your explanation was extremely useful to get closer to your overall concept.
However this is not the root of the malfunction. I have just noticed, that problem comes
when I run my EXE from a shared folder (a folder residing on the host OS shared to be
accessible by the guest OS).

QuickOPC 2019.1
-running in host OS: OK
-runinng in guest OS: OK
-running in the guest OS in a shared folder: OK

QuickOPC 2021.2
-running in host OS: OK
-runinng in guest OS: OK
-running in the guest OS in a shared folder: FAIL

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

More
29 Jun 2021 07:12 #9843 by support
I am not sure if you are building for the correct version.

In runtime, when using COM, the latest installed (registered) QuickOPC version will be used.

In development (I mean building the software, not running it on development machine), you need to make sure you are building for the QuickOPC version it will be later used in runtime. You may have multiple QuickOPC versions on the development machine, and each of them will install their version of COM type libraries for QuickOPC. The type libraries are used to generate source code for Delphi wrapper units, using the process described here : opclabs.doc-that.com/files/onlinedocs/QuickOpc/Latest/User%2...20Libraries%20to%20Delphi.html . We also ship the generated source code with each version, but the code can differ with Delphi versions and we only ship one, so in general you are supposed to repeat this process with your Delphi version. You then end up with source code for the units that wrap the calls to a specific version of QuickOPC. And, you need to use these units in your applications. By doing so, the application becomes dependent on specific QuickOPC version in the runtime, and it will crash if a different version is installed.

The point I am trying to make is that you need to know which version of type libraries (and, the Delphi wrapper units, consequently) you are building against - and it may not be the version that was installed last on the development machine.

If unsure, the version can be found inside the wrapper units' source code. For example, my OpcLabs_EasyOpcClassic_TLB.pas contains:
const
  // TypeLibrary Major and minor versions
  OpcLabs_EasyOpcClassicMajorVersion = 5;
  OpcLabs_EasyOpcClassicMinorVersion = 61;

This is what should be there for QuickOPC 2021.2 - same number in all the units for all OpcLabs libraries (not the MIcrosoft ones, of course).

If you have checked that the building process is for this version, and it is also QuickOPC 2021.2 that is installed latest in the runtime environment, and it still does not work, we will investigate further. With older versions, you will be on your own.

Best regards

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

More
28 Jun 2021 15:02 #9839 by lamar
Update:
the problem appears only in VMWARE environment. (both x86 and x64)
If I install QuickOPC 2021.2 runtime on the host PC, it is OK.
HOWEVER:
2019.1 runtime works without any problems on the SAME virtual machine.
(the to VMs are clones)

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

More
28 Jun 2021 14:11 #9838 by lamar
Attachment is missing

File Attachment:

File Name: upload.zip
File Size:2,686 KB
Attachments:

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

More
28 Jun 2021 14:09 #9837 by lamar
Yes exactly.
I do the instructions of "Automated deployment with Production installer".

1. I go to another VM (no Delphi is installed, no QickOPC Full (developer) version is installed)
2. I install a QuickOPC 2021.2 Production (runtime).

command line switches:
/SILENT /TYPE=productioncom "/LicenseFile=xxxx.bin"

3. I test my apps developed in the other VM.

Please find my (A) (B) (C) EXE files attached.

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

More
28 Jun 2021 13:42 #9836 by support
Hello,

I do not understand what precisely you mean by ".. I install 2021.2 runtime only". What are the steps you take?

Have you done what is described here?: opclabs.doc-that.com/files/onlinedocs/QuickOpc/Latest/User%2...ml#Application_Deployment.html

Best regards

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

More
28 Jun 2021 13:31 #9835 by lamar
Ok, but please check my report.
2012.2 (standalone) runtime does not work with the app
compiled with 2021.2 developer.

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

More
28 Jun 2021 13:22 #9834 by support
In .NET, different QuickOPC versions can coexist.

We do not support it in COM. Just one version at a machine.

Best regards

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

Moderators: support
Time to create page: 0.078 seconds