/ src / modules / launcher / Plugins / Microsoft.Plugin.Program / Programs / ApplicationActivationManager.cs
ApplicationActivationManager.cs
 1  // Copyright (c) Microsoft Corporation
 2  // The Microsoft Corporation licenses this file to you under the MIT license.
 3  // See the LICENSE file in the project root for more information.
 4  
 5  using System;
 6  using System.Runtime.CompilerServices;
 7  using System.Runtime.InteropServices;
 8  
 9  namespace Microsoft.Plugin.Program.Programs.ApplicationActivationHelper
10  {
11      // Application Activation Manager Class
12      [ComImport]
13      [Guid("45BA127D-10A8-46EA-8AB7-56EA9078943C")]
14      public class ApplicationActivationManager : IApplicationActivationManager
15      {
16          [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)/*, PreserveSig*/]
17          public extern IntPtr ActivateApplication([In] string appUserModelId, [In] string arguments, [In] ActivateOptions options, [Out] out uint processId);
18  
19          [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
20          public extern IntPtr ActivateForFile([In] string appUserModelId, [In] IntPtr /*IShellItemArray* */ itemArray, [In] string verb, [Out] out uint processId);
21  
22          [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
23          public extern IntPtr ActivateForProtocol([In] string appUserModelId, [In] IntPtr /* IShellItemArray* */itemArray, [Out] out uint processId);
24      }
25  }