06-06-2025 01:29 AM
I am having difficulties to build an executable for running in cRIO, and to solve that took a step back and trying it as EXE for Windows but same issue.
The problem is now I am trying to build the NI example (copied from original directory) and the application cannot run because of the below reported errors.
- I added the dependency dll i.e. nii61850lvapi.dll also manually to the includes and see there is a warning that there are multiple source, one of them will be used. This means that during build the LV knows what is that dependency (and where to find it)
- Since I have this LV Library so to make sure all is included.
- I also copied the nii61850lvapi.dll everywhere that executable and OS could be looking into by default:
Missing external function nii61850lvapi.dll:nii61850lvapi_Createled:C in VI 61850.Ivlib:Create IED.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_GetServers: C in VI 61850.Ivlib:Search for Servers.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_ServerSetQueuePoolEntries:C in VI_SetServerProperty.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_ServerSetOutputQueueLength:C in VI_SetServerProperty.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_ServerSetOsiTSel:C in VI_SetServerProperty.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_ServerSetOsiSSel:C in VI_SetServerProperty.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_ServerSetOsiPSel:C in VI_SetServerProperty.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_ServerSetOsiMask: C in VI_SetServerProperty.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_ServerSetOsiApTitle: C in VI_SetServerProperty.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_ServerSetOsiAplnvoke:C in VI_SetServerProperty.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_ServerSetOsiAeQualifier:C in VI_SetServerProperty.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_ServerSetOsiAelnvoke:C in VI_SetServerProperty.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_ServerSetNumberOfConnections:C in VI_SetServerProperty.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_ServerSetNumberOfBuffers:C in VI_SetServerProperty.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_ServerSetMax TsduSize:C in VI_SetServerProperty.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_ServerSetlpAddress:C in VI_SetServerProperty.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_ServerSetInputQueueLength:C in VI_SetServerProperty.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_StartServer:C in VI 61850.Ivlib:Start Server.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_SearchPoints:C in VI 61850.Ivlib:Search for Points.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_CreateBundle:C in VI 61850.Ivlib: Create Bundle.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_Refresh:C in VI 61850.Ivlib: Refresh.vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_ReadTimePoint:C in VI 61850.Ivlib: Read Point (Time).vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_ReadUnsignedIntegerPoint:C in VI 61850.Ivlib: Read Point (Unsigned Integer).vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_ReadIntegerPoint:C in VI 61850.Ivlib: Read Point (Integer).vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_WriteTimePoint:C in VI 61850.lvlib:Write Point (Time).vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_WriteUnsignedIntegerPoint:C in VI 61850.Ivlib: Write Point (Unsigned Integer).vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_WritelntegerPoint:C in VI 61850.Ivlib: Write Point (Integer).vi.
Missing external function nii61850lvapi.dll:nii61850lvapi_Commit:C in VI 61850.Ivlib: Commit.vi.
06-06-2025 07:48 AM
You need to install the NI 61850 Toolkit explicitly on every system you try to use it on. ni61850lvapi.dll is only a thin wrapper around the real code and that real code is in another DLL (or shared library for NI Linux real-time systems) that needs to be installed explicitly.
06-06-2025 08:08 AM
Hello Rolf and thanks for your reply.
Yes surely I have that and I am running the server and client VIs from LV successfully. In fact I am using the NI example which comes only with installation of the driver. Since I couldn't find the root of problem I tried this official example.
So the whole problem is that when the executable is built, it cannot find the dll.
I may try this on RT target, hopefully is less complicated.
Cheers,
Hamid
06-06-2025 08:32 AM - edited 06-06-2025 08:33 AM
And you run that executable on the same computer that you use to develop it? If you do I'm stumped but if you don't, that Toolkit installer also contains runtime support that is required on the target system. You should be able to create an installer in the LabVIEW Application Builder for your application and make sure to include in the additional Installers also the LabVIEW runtime and the IEC 61850 Toolkit runtime support.
For the real-time system you will have to go into NI MAX and make sure that the IEC 61850 support is added to your target.
06-06-2025 08:37 AM
Yes, I am running on the same computer! Actually I made installer and installed it (still on same computer) and that didn't help either.
For real time of course I have it installed already:
The problem might be a configuration, but I have tried different ways of including: even manually adding the dependencies to the project itself. So far no hope.