mirror of https://gitee.com/openkylin/glib2.0.git
134 lines
5.3 KiB
C
Executable File
134 lines
5.3 KiB
C
Executable File
/*
|
|
* SPDX-FileCopyrightText: This file has no copyright assigned and is placed in the Public Domain.
|
|
* SPDX-License-Identifier: CC0-1.0
|
|
*
|
|
* This file is part of the w64 mingw-runtime package.
|
|
* No warranty is given; refer to https://github.com/kinke/mingw-w64-crt/blob/master/DISCLAIMER.PD.
|
|
*/
|
|
|
|
#if NTDDI_VERSION < NTDDI_WIN8
|
|
/* The following code is copied verbatim from MinGW-w64 shobjidl.h */
|
|
/*
|
|
* IApplicationActivationManager interface
|
|
*/
|
|
typedef enum ACTIVATEOPTIONS {
|
|
AO_NONE = 0x0,
|
|
AO_DESIGNMODE = 0x1,
|
|
AO_NOERRORUI = 0x2,
|
|
AO_NOSPLASHSCREEN = 0x4
|
|
} ACTIVATEOPTIONS;
|
|
|
|
DEFINE_ENUM_FLAG_OPERATORS(ACTIVATEOPTIONS)
|
|
|
|
#ifndef __IApplicationActivationManager_INTERFACE_DEFINED__
|
|
#define __IApplicationActivationManager_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IApplicationActivationManager, 0x2e941141, 0x7f97, 0x4756, 0xba,0x1d, 0x9d,0xec,0xde,0x89,0x4a,0x3d);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("2e941141-7f97-4756-ba1d-9decde894a3d")
|
|
IApplicationActivationManager : public IUnknown
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE ActivateApplication(
|
|
LPCWSTR appUserModelId,
|
|
LPCWSTR arguments,
|
|
ACTIVATEOPTIONS options,
|
|
DWORD *processId) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ActivateForFile(
|
|
LPCWSTR appUserModelId,
|
|
IShellItemArray *itemArray,
|
|
LPCWSTR verb,
|
|
DWORD *processId) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ActivateForProtocol(
|
|
LPCWSTR appUserModelId,
|
|
IShellItemArray *itemArray,
|
|
DWORD *processId) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IApplicationActivationManager, 0x2e941141, 0x7f97, 0x4756, 0xba,0x1d, 0x9d,0xec,0xde,0x89,0x4a,0x3d)
|
|
#endif
|
|
#else
|
|
typedef struct IApplicationActivationManagerVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IApplicationActivationManager *This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IApplicationActivationManager *This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IApplicationActivationManager *This);
|
|
|
|
/*** IApplicationActivationManager methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *ActivateApplication)(
|
|
IApplicationActivationManager *This,
|
|
LPCWSTR appUserModelId,
|
|
LPCWSTR arguments,
|
|
ACTIVATEOPTIONS options,
|
|
DWORD *processId);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *ActivateForFile)(
|
|
IApplicationActivationManager *This,
|
|
LPCWSTR appUserModelId,
|
|
IShellItemArray *itemArray,
|
|
LPCWSTR verb,
|
|
DWORD *processId);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *ActivateForProtocol)(
|
|
IApplicationActivationManager *This,
|
|
LPCWSTR appUserModelId,
|
|
IShellItemArray *itemArray,
|
|
DWORD *processId);
|
|
|
|
END_INTERFACE
|
|
} IApplicationActivationManagerVtbl;
|
|
|
|
interface IApplicationActivationManager {
|
|
CONST_VTBL IApplicationActivationManagerVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#define IApplicationActivationManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
|
|
#define IApplicationActivationManager_AddRef(This) (This)->lpVtbl->AddRef(This)
|
|
#define IApplicationActivationManager_Release(This) (This)->lpVtbl->Release(This)
|
|
/*** IApplicationActivationManager methods ***/
|
|
#define IApplicationActivationManager_ActivateApplication(This,appUserModelId,arguments,options,processId) (This)->lpVtbl->ActivateApplication(This,appUserModelId,arguments,options,processId)
|
|
#define IApplicationActivationManager_ActivateForFile(This,appUserModelId,itemArray,verb,processId) (This)->lpVtbl->ActivateForFile(This,appUserModelId,itemArray,verb,processId)
|
|
#define IApplicationActivationManager_ActivateForProtocol(This,appUserModelId,itemArray,processId) (This)->lpVtbl->ActivateForProtocol(This,appUserModelId,itemArray,processId)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IApplicationActivationManager_QueryInterface(IApplicationActivationManager* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IApplicationActivationManager_AddRef(IApplicationActivationManager* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IApplicationActivationManager_Release(IApplicationActivationManager* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IApplicationActivationManager methods ***/
|
|
static FORCEINLINE HRESULT IApplicationActivationManager_ActivateApplication(IApplicationActivationManager* This,LPCWSTR appUserModelId,LPCWSTR arguments,ACTIVATEOPTIONS options,DWORD *processId) {
|
|
return This->lpVtbl->ActivateApplication(This,appUserModelId,arguments,options,processId);
|
|
}
|
|
static FORCEINLINE HRESULT IApplicationActivationManager_ActivateForFile(IApplicationActivationManager* This,LPCWSTR appUserModelId,IShellItemArray *itemArray,LPCWSTR verb,DWORD *processId) {
|
|
return This->lpVtbl->ActivateForFile(This,appUserModelId,itemArray,verb,processId);
|
|
}
|
|
static FORCEINLINE HRESULT IApplicationActivationManager_ActivateForProtocol(IApplicationActivationManager* This,LPCWSTR appUserModelId,IShellItemArray *itemArray,DWORD *processId) {
|
|
return This->lpVtbl->ActivateForProtocol(This,appUserModelId,itemArray,processId);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
#endif /* __IApplicationActivationManager_INTERFACE_DEFINED__ */
|
|
#endif /* NTDDI_VERSION < NTDDI_WIN8 */ |