LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

using labview to control other programs

Hello, 

 

I have been searching through the discussion boards and have seen similar questions to mine but from over a decade ago so I am wondering if things have changed since then. Basically, I want to know if there is a way system exec can send commands to a program that is already open. 

 

I am working with a program that analyses diffraction patterns and I want LabVIEW to tell that program to take the image and then analyze it. 

 

If system exec cant do this is there another way I can achieve this?

 

Thank you!

 

 

0 Kudos
Message 1 of 3
(1,263 Views)

Hi MK,

 


@Mk.2020 wrote:

Basically, I want to know if there is a way system exec can send commands to a program that is already open. 


Basically: no.

 


@Mk.2020 wrote:

If system exec cant do this is there another way I can achieve this?


Read the manual for that other program: Does it support any API to remotely call actions in this program?

 


@Mk.2020 wrote:

have seen similar questions to mine but from over a decade ago so I am wondering if things have changed since then.


In the last decade software security concerns became more strict. Modern OS (like Windows10) applies far more/better security restrictions. It might get harder to automate some other software by simulation user actions programmatically…

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 2 of 3
(1,259 Views)

@Mk.2020 wrote:

Hello, 

 

I have been searching through the discussion boards and have seen similar questions to mine but from over a decade ago so I am wondering if things have changed since then. Basically, I want to know if there is a way system exec can send commands to a program that is already open. 

 

I am working with a program that analyses diffraction patterns and I want LabVIEW to tell that program to take the image and then analyze it. 

 

If system exec cant do this is there another way I can achieve this?

 

Thank you!

 

 


You're looking for interprocess communication.  In order to achieve that, the OS must have an engine for it, and the processes must support it.  There was a really nice system devised for that long ago, called Rexx.  Although it is available on a wide variety of platforms (came built in with OS/2 and I think the Amiga OS), it won't do you any good to install it unless the application you want to control was built with a Rexx interface.  Of course on a Mac there is AppleScript.

"If you weren't supposed to push it, it wouldn't be a button."
0 Kudos
Message 3 of 3
(1,196 Views)