In my application, I have a GUI from which user selects a particular option. When this menu option is selected, the application should load another process. Now the user can close the application (using Exit()) but process invoked by the application should still be running.

The user can at any time open the appliaction GUI and choose to stop the process which is running.

But while the process is running, user may have to start the application which pops up a dialog box etc. This should be acheived without user intervention.

In order to achieve all this should my design have an exe which runs on its own thread or is there any other way to do it.

How will this exe communicate with another application which is not open?

What are the methods available to design it?