# Launch(string, params string[])

> Launches a secondary instance of UnityEditor on the same project as the master instance.

## Definition

* **Type:** Method
* **Namespace:** [UnityEditor.MPE](/engine/6000.7/script-reference/unityeditor/mpe.md)
* **Assembly:** UnityEditor.CoreModule

## Launch(string, string\[])

```csharp
public static int Launch(string roleName, params string[] keyValuePairs)
```

### Parameters

**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): The name that corresponds to the [RoleProviderAttribute](/engine/6000.7/script-reference/unityeditor/mpe/roleproviderattribute.md) of the process to start.**** (\[string\[]]\(https\://learn.microsoft.com/dotnet/api/system.string)): Arguments passed to the slave process.

### Returns

| Type                                                       | Description                                                                                     |
| ---------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| [int](https://learn.microsoft.com/dotnet/api/system.int32) | The process ID of the slave process. A value of 0 means the slave process could not be started. |
