01-18-2016 03:03 PM
Hi,
I'm using Datasocket to communicate with an OPC server (Cognex OPC).
Sometimes, one of the variable crash my executable (the application freeze and do not respond).
I've try to track what was the error code, but it seems that I don't reach the error out indicator.
Is there an error log file somewhere that could help me to debug more?
Any idea why a Datasocket Write could do this?
Thank you,
01-19-2016 07:23 AM
Could it be that the variable access type is set to Write Only in my variable and in the OPC server is set to Read/Write?
01-20-2016 08:55 AM
StephBeaudoin,
To clarify, you don't recieve an error, you application just crashes, correct? Do you ever get a timeout?
-Tanner
01-20-2016 09:02 AM
Exactly Tanner,
My executable become disabled and Not Responding.
I know it occurs there because I have a log file before and after what you see in my attachment and it never reach the log file after.
Looks like its stock in the DataSocket:Write even if there's a timeout.
01-20-2016 09:15 AM
Steph,
Does it give you an option to send your crash log to NI? Have you done so? If so, I would call NI at 1-866-275-6964 or go to ni.com/support and open a new service request.
Regards,
Tanner
01-20-2016 09:20 AM
Unfortunatly no. The only thing I can press is Close and nothing else appears.
It like any software freeze/crash and you go in Windows Task Manager to End the Task...
Next step is to go at my customer office and try it in development mode. ($$$)
01-20-2016 09:28 AM
Ah, right. Executable. Do you have the OPC server running and accessible from your location? Could you try to run some LabVIEW examples to see if you can connect to it outside of the exe? If you need the development system, you can download a trial from ni.com/downloads.
01-20-2016 09:59 AM
The OPC is running properly, The Cognex OPC server is not frozen when it occurs. For some reason, it always happen with the same variable (all the other ones work correctly). And as I said, it's intermittent.
Using the trial version is a really good idea! Thank you 🙂
01-20-2016 11:54 AM
I have new info. It occurred after writing more than 800 times. The other software RECEIVED the value, so the Datasocket:write successfully send the value but it crashed my executable after that (but it's still something inside the Datasocket:write)...
I've tried to download LabVIEW Development 2012 (http://www.ni.com/download/labview-development-system-2012-sp1/3692/en/), but when I pressed the download button, it was linked to LabVIEW 2015? Is there any way I can download 2012 on NI website??
Thank you again
01-21-2016 08:12 AM
Are you doing a front panel binding and and using the data socket write vi? It looks like you are because you are using a property node to get the data socket binding url. You are actually passing data two ways. One way through the data socket write vi and also through the service that updates front panel bindings. Check system error logs. The binding service to the OPC server is what causes your program to become unresponsive. Just pass the url to the data socket write vi with a reasonable timeout and do not do a front panel binding. You should see the error out and your vi/exe will not become unresponsive.