Launching a Program

The platform debug plug-ins allow your plug-in to extend the platform so that your partiticular type of program can be launched from the workbench, obtaining input from the user if necessary. A unique type of program that can be launched in the platform is called a launch configuration type. The class ILaunchConfiguration is used to describe a type of configuration. A launch configuration keeps a set of named attributes that can be used to store data specific for a particular kind of launcher.

For each launch configuration type, there are different modes in which the configuration can be launched. The platform defines modes for running, debugging, or profiling a program defined by a particular configuration. Plug-ins are free to implement any or all of these launch modes for their particular launch configuration, or define new launch modes for any launch configuration.

Plug-ins that contribute additional types of launchers do so by providing an ILaunchConfigurationDelegate (or ILaunchConfigurationDelegate2) that knows how to launch a program given the expected type and mode for launch configuration.� Once the program is launched, an ILaunch object is used to represent the launched session.� This object can be queried for information such as running processes, debug session information, and source code location.� A launch knows the configuration that was used to create it.�

Users interact with a launch configuration dialog to set up the parameters for different types of launches. These configurations can be stored in a file to be shared with other users or stored locally in the workspace.