/ src / modules / launcher / Plugins / Microsoft.Plugin.Program / Programs / IApplicationActivationManager.cs
IApplicationActivationManager.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.InteropServices; 7 8 namespace Microsoft.Plugin.Program.Programs.ApplicationActivationHelper 9 { 10 // Reference : https://github.com/MicrosoftEdge/edge-launcher/blob/108e63df0b4cb5cd9d5e45aa7a264690851ec51d/MIcrosoftEdgeLauncherCsharp/Program.cs 11 [Flags] 12 public enum ActivateOptions 13 { 14 None = 0x00000000, 15 DesignMode = 0x00000001, 16 NoErrorUI = 0x00000002, 17 NoSplashScreen = 0x00000004, 18 } 19 20 // ApplicationActivationManager 21 [ComImport] 22 [Guid("2e941141-7f97-4756-ba1d-9decde894a3d")] 23 [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] 24 public interface IApplicationActivationManager 25 { 26 IntPtr ActivateApplication([In] string appUserModelId, [In] string arguments, [In] ActivateOptions options, [Out] out uint processId); 27 28 IntPtr ActivateForFile([In] string appUserModelId, [In] IntPtr /*IShellItemArray* */ itemArray, [In] string verb, [Out] out uint processId); 29 30 IntPtr ActivateForProtocol([In] string appUserModelId, [In] IntPtr /* IShellItemArray* */itemArray, [Out] out uint processId); 31 } 32 }