mirror of
https://github.com/reactos/reactos.git
synced 2025-08-03 20:45:44 +00:00
define interface IShellExecuteHook
svn path=/trunk/; revision=7488
This commit is contained in:
parent
41e10d4931
commit
769315c915
3 changed files with 160 additions and 6 deletions
|
@ -140,7 +140,7 @@ typedef struct _SHELLEXECUTEINFOA {
|
|||
DWORD dwHotKey;
|
||||
HANDLE hIcon;
|
||||
HANDLE hProcess;
|
||||
} SHELLEXECUTEINFOA,*LPSHELLEXECUTEINFOA;
|
||||
} SHELLEXECUTEINFOA;
|
||||
typedef struct _SHELLEXECUTEINFOW {
|
||||
DWORD cbSize;
|
||||
ULONG fMask;
|
||||
|
@ -157,7 +157,7 @@ typedef struct _SHELLEXECUTEINFOW {
|
|||
DWORD dwHotKey;
|
||||
HANDLE hIcon;
|
||||
HANDLE hProcess;
|
||||
} SHELLEXECUTEINFOW,*LPSHELLEXECUTEINFOW;
|
||||
} SHELLEXECUTEINFOW;
|
||||
typedef struct _SHFILEOPSTRUCTA {
|
||||
HWND hwnd;
|
||||
UINT wFunc;
|
||||
|
@ -220,8 +220,8 @@ int WINAPI ShellAboutA(HWND,LPCSTR,LPCSTR,HICON);
|
|||
int WINAPI ShellAboutW(HWND,LPCWSTR,LPCWSTR,HICON);
|
||||
HINSTANCE WINAPI ShellExecuteA(HWND,LPCSTR,LPCSTR,LPCSTR,LPCSTR,INT);
|
||||
HINSTANCE WINAPI ShellExecuteW(HWND,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,INT);
|
||||
BOOL WINAPI ShellExecuteExA(LPSHELLEXECUTEINFOA);
|
||||
BOOL WINAPI ShellExecuteExW(LPSHELLEXECUTEINFOW);
|
||||
BOOL WINAPI ShellExecuteExA(SHELLEXECUTEINFOA*);
|
||||
BOOL WINAPI ShellExecuteExW(SHELLEXECUTEINFOW*);
|
||||
int WINAPI SHFileOperationA(LPSHFILEOPSTRUCTA);
|
||||
int WINAPI SHFileOperationW(LPSHFILEOPSTRUCTW);
|
||||
void WINAPI SHFreeNameMappings(HANDLE);
|
||||
|
|
|
@ -48,11 +48,9 @@ DEFINE_SHLGUID(IID_IDelayedRelease, 0x000214EDL, 0, 0);
|
|||
DEFINE_SHLGUID(IID_IShellCopyHookA, 0x000214EFL, 0, 0);
|
||||
DEFINE_SHLGUID(IID_IFileViewerA, 0x000214F0L, 0, 0);
|
||||
DEFINE_SHLGUID(IID_IFileViewerSite, 0x000214F3L, 0, 0);
|
||||
DEFINE_SHLGUID(IID_IShellExecuteHookA, 0x000214F5L, 0, 0);
|
||||
DEFINE_SHLGUID(IID_IPropSheetPage, 0x000214F6L, 0, 0);
|
||||
DEFINE_SHLGUID(IID_INewShortcutHookW, 0x000214F7L, 0, 0);
|
||||
DEFINE_SHLGUID(IID_IFileViewerW, 0x000214F8L, 0, 0);
|
||||
DEFINE_SHLGUID(IID_IShellExecuteHookW, 0x000214FBL, 0, 0);
|
||||
DEFINE_SHLGUID(IID_IShellCopyHookW, 0x000214FCL, 0, 0);
|
||||
DEFINE_SHLGUID(IID_IRemoteComputer, 0x000214FEL, 0, 0);
|
||||
DEFINE_SHLGUID(IID_IQueryInfo, 0x00021500L, 0, 0);
|
||||
|
@ -73,6 +71,8 @@ DEFINE_SHLGUID(IID_IShellLinkA, 0x000214EEL, 0, 0);
|
|||
DEFINE_SHLGUID(IID_IEnumIDList, 0x000214F2L, 0, 0);
|
||||
DEFINE_SHLGUID(IID_IShellLinkW, 0x000214F9L, 0, 0);
|
||||
#endif
|
||||
/* DEFINE_SHLGUID(IID_IShellExecuteHookA, 0x000214F5L, 0, 0); */
|
||||
/* DEFINE_SHLGUID(IID_IShellExecuteHookW, 0x000214FBL, 0, 0); */
|
||||
|
||||
DEFINE_GUID(SID_STopLevelBrowser, 0x4C96BE40L, 0x915C, 0x11CF, 0x99, 0xD3, 0x00, 0xAA, 0x00, 0x4A, 0xE8, 0x37);
|
||||
|
||||
|
|
|
@ -4112,6 +4112,160 @@ void __RPC_STUB IContextMenu3_HandleMenuMsg2_Stub(
|
|||
|
||||
#endif /* __IContextMenu3_INTERFACE_DEFINED__ */
|
||||
|
||||
#ifndef __IShellExecuteHookA_FWD_DEFINED__
|
||||
#define __IShellExecuteHookA_FWD_DEFINED__
|
||||
typedef struct IShellExecuteHookA IShellExecuteHookA;
|
||||
#endif
|
||||
|
||||
typedef struct _SHELLEXECUTEINFOA *LPSHELLEXECUTEINFOA;
|
||||
|
||||
/*****************************************************************************
|
||||
* IShellExecuteHookA interface
|
||||
*/
|
||||
#ifndef __IShellExecuteHookA_INTERFACE_DEFINED__
|
||||
#define __IShellExecuteHookA_INTERFACE_DEFINED__
|
||||
|
||||
DEFINE_GUID(IID_IShellExecuteHookA, 0x000214f5, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
|
||||
#if defined(__cplusplus) && !defined(CINTERFACE)
|
||||
struct IShellExecuteHookA : public IUnknown
|
||||
{
|
||||
virtual HRESULT STDMETHODCALLTYPE Execute(
|
||||
LPSHELLEXECUTEINFOA pei) = 0;
|
||||
|
||||
};
|
||||
#else
|
||||
typedef struct IShellExecuteHookAVtbl IShellExecuteHookAVtbl;
|
||||
struct IShellExecuteHookA {
|
||||
const IShellExecuteHookAVtbl* lpVtbl;
|
||||
};
|
||||
struct IShellExecuteHookAVtbl {
|
||||
ICOM_MSVTABLE_COMPAT_FIELDS
|
||||
|
||||
/*** IUnknown methods ***/
|
||||
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
||||
IShellExecuteHookA* This,
|
||||
REFIID riid,
|
||||
void** ppvObject);
|
||||
|
||||
ULONG (STDMETHODCALLTYPE *AddRef)(
|
||||
IShellExecuteHookA* This);
|
||||
|
||||
ULONG (STDMETHODCALLTYPE *Release)(
|
||||
IShellExecuteHookA* This);
|
||||
|
||||
/*** IShellExecuteHookA methods ***/
|
||||
HRESULT (STDMETHODCALLTYPE *Execute)(
|
||||
IShellExecuteHookA* This,
|
||||
LPSHELLEXECUTEINFOA pei);
|
||||
|
||||
};
|
||||
|
||||
/*** IUnknown methods ***/
|
||||
#define IShellExecuteHookA_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
|
||||
#define IShellExecuteHookA_AddRef(p) (p)->lpVtbl->AddRef(p)
|
||||
#define IShellExecuteHookA_Release(p) (p)->lpVtbl->Release(p)
|
||||
/*** IShellExecuteHookA methods ***/
|
||||
#define IShellExecuteHookA_Execute(p,a) (p)->lpVtbl->Execute(p,a)
|
||||
|
||||
#endif
|
||||
|
||||
#define IShellExecuteHookA_METHODS \
|
||||
ICOM_MSVTABLE_COMPAT_FIELDS \
|
||||
/*** IUnknown methods ***/ \
|
||||
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
|
||||
STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
|
||||
STDMETHOD_(ULONG,Release)(THIS) PURE; \
|
||||
/*** IShellExecuteHookA methods ***/ \
|
||||
STDMETHOD_(HRESULT,Execute)(THIS_ LPSHELLEXECUTEINFOA pei) PURE;
|
||||
|
||||
HRESULT CALLBACK IShellExecuteHookA_Execute_Proxy(
|
||||
IShellExecuteHookA* This,
|
||||
LPSHELLEXECUTEINFOA pei);
|
||||
void __RPC_STUB IShellExecuteHookA_Execute_Stub(
|
||||
struct IRpcStubBuffer* This,
|
||||
struct IRpcChannelBuffer* pRpcChannelBuffer,
|
||||
PRPC_MESSAGE pRpcMessage,
|
||||
DWORD* pdwStubPhase);
|
||||
|
||||
#endif /* __IShellExecuteHookA_INTERFACE_DEFINED__ */
|
||||
|
||||
#ifndef __IShellExecuteHookW_FWD_DEFINED__
|
||||
#define __IShellExecuteHookW_FWD_DEFINED__
|
||||
typedef struct IShellExecuteHookW IShellExecuteHookW;
|
||||
#endif
|
||||
|
||||
typedef struct _SHELLEXECUTEINFOW *LPSHELLEXECUTEINFOW;
|
||||
|
||||
/*****************************************************************************
|
||||
* IShellExecuteHookW interface
|
||||
*/
|
||||
#ifndef __IShellExecuteHookW_INTERFACE_DEFINED__
|
||||
#define __IShellExecuteHookW_INTERFACE_DEFINED__
|
||||
|
||||
DEFINE_GUID(IID_IShellExecuteHookW, 0x000214fb, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
|
||||
#if defined(__cplusplus) && !defined(CINTERFACE)
|
||||
struct IShellExecuteHookW : public IUnknown
|
||||
{
|
||||
virtual HRESULT STDMETHODCALLTYPE Execute(
|
||||
LPSHELLEXECUTEINFOW pei) = 0;
|
||||
|
||||
};
|
||||
#else
|
||||
typedef struct IShellExecuteHookWVtbl IShellExecuteHookWVtbl;
|
||||
struct IShellExecuteHookW {
|
||||
const IShellExecuteHookWVtbl* lpVtbl;
|
||||
};
|
||||
struct IShellExecuteHookWVtbl {
|
||||
ICOM_MSVTABLE_COMPAT_FIELDS
|
||||
|
||||
/*** IUnknown methods ***/
|
||||
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
||||
IShellExecuteHookW* This,
|
||||
REFIID riid,
|
||||
void** ppvObject);
|
||||
|
||||
ULONG (STDMETHODCALLTYPE *AddRef)(
|
||||
IShellExecuteHookW* This);
|
||||
|
||||
ULONG (STDMETHODCALLTYPE *Release)(
|
||||
IShellExecuteHookW* This);
|
||||
|
||||
/*** IShellExecuteHookW methods ***/
|
||||
HRESULT (STDMETHODCALLTYPE *Execute)(
|
||||
IShellExecuteHookW* This,
|
||||
LPSHELLEXECUTEINFOW pei);
|
||||
|
||||
};
|
||||
|
||||
/*** IUnknown methods ***/
|
||||
#define IShellExecuteHookW_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
|
||||
#define IShellExecuteHookW_AddRef(p) (p)->lpVtbl->AddRef(p)
|
||||
#define IShellExecuteHookW_Release(p) (p)->lpVtbl->Release(p)
|
||||
/*** IShellExecuteHookW methods ***/
|
||||
#define IShellExecuteHookW_Execute(p,a) (p)->lpVtbl->Execute(p,a)
|
||||
|
||||
#endif
|
||||
|
||||
#define IShellExecuteHookW_METHODS \
|
||||
ICOM_MSVTABLE_COMPAT_FIELDS \
|
||||
/*** IUnknown methods ***/ \
|
||||
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
|
||||
STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
|
||||
STDMETHOD_(ULONG,Release)(THIS) PURE; \
|
||||
/*** IShellExecuteHookW methods ***/ \
|
||||
STDMETHOD_(HRESULT,Execute)(THIS_ LPSHELLEXECUTEINFOW pei) PURE;
|
||||
|
||||
HRESULT CALLBACK IShellExecuteHookW_Execute_Proxy(
|
||||
IShellExecuteHookW* This,
|
||||
LPSHELLEXECUTEINFOW pei);
|
||||
void __RPC_STUB IShellExecuteHookW_Execute_Stub(
|
||||
struct IRpcStubBuffer* This,
|
||||
struct IRpcChannelBuffer* pRpcChannelBuffer,
|
||||
PRPC_MESSAGE pRpcMessage,
|
||||
DWORD* pdwStubPhase);
|
||||
|
||||
#endif /* __IShellExecuteHookW_INTERFACE_DEFINED__ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue