The Shell commands enable your application to open any registered document file, or launch an application. Though the Shell commands are few in number, they are deceptively powerful. Besides being able to specify the size and position of the document/application window, you can specify what your code is to do when launching the other application. You can specify that your application either:
- continue without waiting,
- wait for the other application to actually finish launching, i.e. display the main application window, or,
- wait for the other application to finish before continuing.
If you wait for the application to launch, then you can get a handle to the application window, allowing you to interact with or send messages to the application.
If you wait for the application to finish, you have the option of capturing the output from that application. This enables you to call, for example, command line utilities that don't create windows, and still get the output of these utilities.