c.rutten Posted October 15, 2020 Report Share Posted October 15, 2020 Hi, One nice feature of SMO is the ability to programmatically abort an instance of a SMO that did not stop properly when asked to. Very similar to what you would do with the big red "abort" button in the labVIEW IDE. The abort method is called in the "destroy.vi" method of the SMO. However, this functionnality doesn't work for me and I'm not sure it is supposed to work. Indeed, the SMO is attempting to call the abort invoke method on the reference of "process.vi" which is a subvi of "LaunchProcess.vi". To my understanding, LabVIEW does not allow to programmatically kill a subvi. Only a top level vi can be killed with the "abort" invoke node (top levels vi include vis launched with the "run" method or with the "asynchronous call" method and the x80 flag for instance). Calling the "abort" method on a subvi's reference ends up with error 1000. Hence I think that LaunchProcess.vi can indeed be aborted programmically but not process.vi and this is why the abort feature doesn't work in SMO. Am I missing something? Best regards, Christophe Quote Link to comment Share on other sites More sharing options...
davidcli Posted November 3, 2020 Report Share Posted November 3, 2020 Have you tried using the SMO.lvclass:Stop.vi and then SMO.lvclass:Destroy.vi? Quote Link to comment Share on other sites More sharing options...
c.rutten Posted November 13, 2020 Author Report Share Posted November 13, 2020 Hello, Yes, I first try to stop the SMO, and then destroy it. The problem is when the SMO doesn't stop after the stop command has been sent. It this case, destroy should trigger and abort but that doesn't work for me. Best regards Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.