WCC OA 3.16 Patch 5 issue

Discussions about product bugs & problems!
Note: This is no replacement for the Official ETM Support!
Search

Post Reply
6 posts • Page 1 of 1
jcbaar
Posts: 34
Joined: Fri Sep 02, 2011 12:20 pm

WCC OA 3.16 Patch 5 issue

Post by jcbaar »

L.S.

After upgrading to Patch 5 none of our custom compiled managers and drivers work anymore. They all generate the following errors before exiting:

The procedure entry point ?toCaseFolded@QString@@QEHAA?AV1@XZ could not be located in the dynamic link library C:\\Siemens\\Automation\\WinCC_OA\\3.16\\bin\\libDatapointV316.dll.
The procedure entry point ?toLocal8Bit@QString@@QEHAA?AVQByteArray@@XZ could not be located in the dynamic link library C:\\Siemens\\Automation\\WinCC_OA\\3.16\\bin\\libManagerV316.dll.


I did a re-compile without success. Did anything change with regards to the API and/or compiler versions to use between Patch 5 and the earlier versions?

Regards,
Jan

P.S. I am compiling for for the Windows version using the Visual Studio 2015 compiler version.

User avatar
agruber
Posts: 147
Joined: Tue Sep 07, 2010 2:52 pm

Re: WCC OA 3.16 Patch 5 issue

Post by agruber »

Hello,

What was the WinCC OA patch you have used/compiled-with before?

When you said recompile, you did a recompile against the API of P005 and it still happens? Can you send us a small example?

BR, Andreas
CustomerCare

User avatar
agruber
Posts: 147
Joined: Tue Sep 07, 2010 2:52 pm

Re: WCC OA 3.16 Patch 5 issue

Post by agruber »

Hello,

Probably the reason for the behavior is that the own WinCC OA-bin directory is not added to the path by the pmon when starting managers, resulting in the manager probably finding wrong libraries.

Do you have other WinCC OA versions installed on the same machine?

Please try to add the WinCC OA bin directory to your system PATH variable and restart your WinCC OA processes afterwards.

BR, Andreas
Customer Care

jcbaar
Posts: 34
Joined: Fri Sep 02, 2011 12:20 pm

Re: WCC OA 3.16 Patch 5 issue

Post by jcbaar »

Things got a bit mixed up with the switch to the new portal so the anwser from Emanual Ivanovic does no longer show up so I repeat it here:

Hi Jan,

I think I have seen such a similar Problem. Can you check your PATH setting for WinCC OA?

It seems that with the new patch it moved somehow to the beginning of the PATH. Can you move it back to the end and see if this works for you?

BR
Emanuel


I have checked to see where the path was located (I assume you refer to the path to the WinCC OA bin folder in the %PATH% environment variable). It was somewhere in between so I moved it to the end without result. I have several versions of WinCC OA installed on my development machine (3.12, 3.14, 3.15 and 3.16) so I use a batch file to setup and start visual studio depending on which version of WinCC OA I am compiling for. For 3.16 I use the following batch file:

@echo off

rem cmd "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\Tools\VsDevCmd.bat"

set API_ROOT=C:\Siemens\Automation\WinCC_OA\3.16\api
set PVSS_II=C:\Siemens\Automation\WinCC_OA\3.16\config\config
set PVSS_II_HOME=C:\Siemens\Automation\WinCC_OA\3.16

rem 3.16 uses Qt 5.9.2...
set QTDIR=C:\Qt\Qt5.5.0\5.5\msvc2013_64

set VC8_DEFS=-DLIBS_AS_DLL -D_CRT_NON_CONFORMING_SWPRINTFS -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -DNODEF__RPC_H__ -DWINVER=0x0500 -DUSES_NEW_IOSTREAMS -DPVSS_PLATFORM=\"%API_PLATFORM%\" -I%API_ROOT%/include/winnt/pvssincl/vc8 -I%API_ROOT%/include/winnt/pvssincl
set API_INCL=.\;%API_ROOT%\include\winnt\pvssincl;%API_ROOT%\include\Basics\Utilities;%API_ROOT%\include\Basics\Variables;%API_ROOT%\include\Basics\NoPosix;%API_ROOT%\include\Basics\DpBasics;%API_ROOT%\include\BCMNew;%API_ROOT%\include\Configs;%API_ROOT%\include\Configs\DrvConfigs\DrvCommon;%API_ROOT%\include\Configs\DrvConfigs\ConvSmooth;%API_ROOT%\include\Datapoint;%API_ROOT%\include\Messages;%API_ROOT%\include\Manager;%API_ROOT%\include\ComDrv;%API_ROOT%\include\Ctrl;%API_ROOT%\include\V24
set API_LIB=%API_ROOT%\lib.winnt\libCtrl.lib;%API_ROOT%\lib.winnt\libComDrv.lib;%API_ROOT%\lib.winnt\libManager.lib;%API_ROOT%\lib.winnt\libMessages.lib;%API_ROOT%\lib.winnt\libDatapoint.lib;%API_ROOT%\lib.winnt\libConfigs.lib;%API_ROOT%\lib.winnt\libBasics.lib;%API_ROOT%\lib.winnt\libV24.lib;%API_ROOT%\lib.winnt\bcm.lib;%API_ROOT%\lib.winnt\ewo.lib;wsock32.lib;netapi32.lib
set D_PVSS_VER=-DPVSS_VER_316 -DPVSS_VERS=316000 "-DPVSS_VERS_DLL=\"316000\""

"C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\devenv.exe"


I use Visual Studio 2017 with the Visual Studio 2015 compiler tools.

Considering the errors I get it looks like it that the API is compiling and linking to a couple of functions which no longer exist in the runtime dll's anymore. Could it be that the patch does not include any needed API updates?

Regards,
Jan

User avatar
alug
Posts: 42
Joined: Mon Oct 18, 2010 11:00 am

Re: WCC OA 3.16 Patch 5 issue

Post by alug »

Hallo,

do you have older Version of WinCC OA installed on the machine?
I got similar errors if the wrong Qt5Core.dll is used. (In my case the 3.15 version)
Maybe you have an old WinCC OA "bin" directory in the PATH before 3.16 "bin" directory
when you start your manager

best regards

Andreas

jcbaar
Posts: 34
Joined: Fri Sep 02, 2011 12:20 pm

Re: WCC OA 3.16 Patch 5 issue

Post by jcbaar »

Andreas,

That seems to have fixed my issue. I have older versions of WinCC OA installed which were defined before 3.16 in the PATH variable. Moving the 3.16 up above the others in the path variable fixed this. This will maybe mean some issues when I need to use the older versions again but knowing this should be able to work around this.

Thanks for your help.

Regards,
Jan

Post Reply
6 posts • Page 1 of 1