• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #if NTDDI_VERSION < NTDDI_WIN8
2 /* The following code is copied verbatim from MinGW-w64 shobjidl.h */
3 /*
4  * IApplicationActivationManager interface
5  */
6 typedef enum ACTIVATEOPTIONS {
7     AO_NONE = 0x0,
8     AO_DESIGNMODE = 0x1,
9     AO_NOERRORUI = 0x2,
10     AO_NOSPLASHSCREEN = 0x4
11 } ACTIVATEOPTIONS;
12 
13 DEFINE_ENUM_FLAG_OPERATORS(ACTIVATEOPTIONS)
14 
15 #ifndef __IApplicationActivationManager_INTERFACE_DEFINED__
16 #define __IApplicationActivationManager_INTERFACE_DEFINED__
17 
18 DEFINE_GUID(IID_IApplicationActivationManager, 0x2e941141, 0x7f97, 0x4756, 0xba,0x1d, 0x9d,0xec,0xde,0x89,0x4a,0x3d);
19 #if defined(__cplusplus) && !defined(CINTERFACE)
20 MIDL_INTERFACE("2e941141-7f97-4756-ba1d-9decde894a3d")
21 IApplicationActivationManager : public IUnknown
22 {
23     virtual HRESULT STDMETHODCALLTYPE ActivateApplication(
24         LPCWSTR appUserModelId,
25         LPCWSTR arguments,
26         ACTIVATEOPTIONS options,
27         DWORD *processId) = 0;
28 
29     virtual HRESULT STDMETHODCALLTYPE ActivateForFile(
30         LPCWSTR appUserModelId,
31         IShellItemArray *itemArray,
32         LPCWSTR verb,
33         DWORD *processId) = 0;
34 
35     virtual HRESULT STDMETHODCALLTYPE ActivateForProtocol(
36         LPCWSTR appUserModelId,
37         IShellItemArray *itemArray,
38         DWORD *processId) = 0;
39 
40 };
41 #ifdef __CRT_UUID_DECL
42 __CRT_UUID_DECL(IApplicationActivationManager, 0x2e941141, 0x7f97, 0x4756, 0xba,0x1d, 0x9d,0xec,0xde,0x89,0x4a,0x3d)
43 #endif
44 #else
45 typedef struct IApplicationActivationManagerVtbl {
46     BEGIN_INTERFACE
47 
48     /*** IUnknown methods ***/
49     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
50         IApplicationActivationManager *This,
51         REFIID riid,
52         void **ppvObject);
53 
54     ULONG (STDMETHODCALLTYPE *AddRef)(
55         IApplicationActivationManager *This);
56 
57     ULONG (STDMETHODCALLTYPE *Release)(
58         IApplicationActivationManager *This);
59 
60     /*** IApplicationActivationManager methods ***/
61     HRESULT (STDMETHODCALLTYPE *ActivateApplication)(
62         IApplicationActivationManager *This,
63         LPCWSTR appUserModelId,
64         LPCWSTR arguments,
65         ACTIVATEOPTIONS options,
66         DWORD *processId);
67 
68     HRESULT (STDMETHODCALLTYPE *ActivateForFile)(
69         IApplicationActivationManager *This,
70         LPCWSTR appUserModelId,
71         IShellItemArray *itemArray,
72         LPCWSTR verb,
73         DWORD *processId);
74 
75     HRESULT (STDMETHODCALLTYPE *ActivateForProtocol)(
76         IApplicationActivationManager *This,
77         LPCWSTR appUserModelId,
78         IShellItemArray *itemArray,
79         DWORD *processId);
80 
81     END_INTERFACE
82 } IApplicationActivationManagerVtbl;
83 
84 interface IApplicationActivationManager {
85     CONST_VTBL IApplicationActivationManagerVtbl* lpVtbl;
86 };
87 
88 #ifdef COBJMACROS
89 #ifndef WIDL_C_INLINE_WRAPPERS
90 /*** IUnknown methods ***/
91 #define IApplicationActivationManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
92 #define IApplicationActivationManager_AddRef(This) (This)->lpVtbl->AddRef(This)
93 #define IApplicationActivationManager_Release(This) (This)->lpVtbl->Release(This)
94 /*** IApplicationActivationManager methods ***/
95 #define IApplicationActivationManager_ActivateApplication(This,appUserModelId,arguments,options,processId) (This)->lpVtbl->ActivateApplication(This,appUserModelId,arguments,options,processId)
96 #define IApplicationActivationManager_ActivateForFile(This,appUserModelId,itemArray,verb,processId) (This)->lpVtbl->ActivateForFile(This,appUserModelId,itemArray,verb,processId)
97 #define IApplicationActivationManager_ActivateForProtocol(This,appUserModelId,itemArray,processId) (This)->lpVtbl->ActivateForProtocol(This,appUserModelId,itemArray,processId)
98 #else
99 /*** IUnknown methods ***/
100 static FORCEINLINE HRESULT IApplicationActivationManager_QueryInterface(IApplicationActivationManager* This,REFIID riid,void **ppvObject) {
101     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
102 }
103 static FORCEINLINE ULONG IApplicationActivationManager_AddRef(IApplicationActivationManager* This) {
104     return This->lpVtbl->AddRef(This);
105 }
106 static FORCEINLINE ULONG IApplicationActivationManager_Release(IApplicationActivationManager* This) {
107     return This->lpVtbl->Release(This);
108 }
109 /*** IApplicationActivationManager methods ***/
110 static FORCEINLINE HRESULT IApplicationActivationManager_ActivateApplication(IApplicationActivationManager* This,LPCWSTR appUserModelId,LPCWSTR arguments,ACTIVATEOPTIONS options,DWORD *processId) {
111     return This->lpVtbl->ActivateApplication(This,appUserModelId,arguments,options,processId);
112 }
113 static FORCEINLINE HRESULT IApplicationActivationManager_ActivateForFile(IApplicationActivationManager* This,LPCWSTR appUserModelId,IShellItemArray *itemArray,LPCWSTR verb,DWORD *processId) {
114     return This->lpVtbl->ActivateForFile(This,appUserModelId,itemArray,verb,processId);
115 }
116 static FORCEINLINE HRESULT IApplicationActivationManager_ActivateForProtocol(IApplicationActivationManager* This,LPCWSTR appUserModelId,IShellItemArray *itemArray,DWORD *processId) {
117     return This->lpVtbl->ActivateForProtocol(This,appUserModelId,itemArray,processId);
118 }
119 #endif
120 #endif
121 
122 #endif
123 
124 
125 #endif  /* __IApplicationActivationManager_INTERFACE_DEFINED__ */
126 #endif /* NTDDI_VERSION < NTDDI_WIN8 */