mirror of
https://github.com/reactos/reactos.git
synced 2025-08-06 05:12:55 +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;
|
DWORD dwHotKey;
|
||||||
HANDLE hIcon;
|
HANDLE hIcon;
|
||||||
HANDLE hProcess;
|
HANDLE hProcess;
|
||||||
} SHELLEXECUTEINFOA,*LPSHELLEXECUTEINFOA;
|
} SHELLEXECUTEINFOA;
|
||||||
typedef struct _SHELLEXECUTEINFOW {
|
typedef struct _SHELLEXECUTEINFOW {
|
||||||
DWORD cbSize;
|
DWORD cbSize;
|
||||||
ULONG fMask;
|
ULONG fMask;
|
||||||
|
@ -157,7 +157,7 @@ typedef struct _SHELLEXECUTEINFOW {
|
||||||
DWORD dwHotKey;
|
DWORD dwHotKey;
|
||||||
HANDLE hIcon;
|
HANDLE hIcon;
|
||||||
HANDLE hProcess;
|
HANDLE hProcess;
|
||||||
} SHELLEXECUTEINFOW,*LPSHELLEXECUTEINFOW;
|
} SHELLEXECUTEINFOW;
|
||||||
typedef struct _SHFILEOPSTRUCTA {
|
typedef struct _SHFILEOPSTRUCTA {
|
||||||
HWND hwnd;
|
HWND hwnd;
|
||||||
UINT wFunc;
|
UINT wFunc;
|
||||||
|
@ -220,8 +220,8 @@ int WINAPI ShellAboutA(HWND,LPCSTR,LPCSTR,HICON);
|
||||||
int WINAPI ShellAboutW(HWND,LPCWSTR,LPCWSTR,HICON);
|
int WINAPI ShellAboutW(HWND,LPCWSTR,LPCWSTR,HICON);
|
||||||
HINSTANCE WINAPI ShellExecuteA(HWND,LPCSTR,LPCSTR,LPCSTR,LPCSTR,INT);
|
HINSTANCE WINAPI ShellExecuteA(HWND,LPCSTR,LPCSTR,LPCSTR,LPCSTR,INT);
|
||||||
HINSTANCE WINAPI ShellExecuteW(HWND,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,INT);
|
HINSTANCE WINAPI ShellExecuteW(HWND,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,INT);
|
||||||
BOOL WINAPI ShellExecuteExA(LPSHELLEXECUTEINFOA);
|
BOOL WINAPI ShellExecuteExA(SHELLEXECUTEINFOA*);
|
||||||
BOOL WINAPI ShellExecuteExW(LPSHELLEXECUTEINFOW);
|
BOOL WINAPI ShellExecuteExW(SHELLEXECUTEINFOW*);
|
||||||
int WINAPI SHFileOperationA(LPSHFILEOPSTRUCTA);
|
int WINAPI SHFileOperationA(LPSHFILEOPSTRUCTA);
|
||||||
int WINAPI SHFileOperationW(LPSHFILEOPSTRUCTW);
|
int WINAPI SHFileOperationW(LPSHFILEOPSTRUCTW);
|
||||||
void WINAPI SHFreeNameMappings(HANDLE);
|
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_IShellCopyHookA, 0x000214EFL, 0, 0);
|
||||||
DEFINE_SHLGUID(IID_IFileViewerA, 0x000214F0L, 0, 0);
|
DEFINE_SHLGUID(IID_IFileViewerA, 0x000214F0L, 0, 0);
|
||||||
DEFINE_SHLGUID(IID_IFileViewerSite, 0x000214F3L, 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_IPropSheetPage, 0x000214F6L, 0, 0);
|
||||||
DEFINE_SHLGUID(IID_INewShortcutHookW, 0x000214F7L, 0, 0);
|
DEFINE_SHLGUID(IID_INewShortcutHookW, 0x000214F7L, 0, 0);
|
||||||
DEFINE_SHLGUID(IID_IFileViewerW, 0x000214F8L, 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_IShellCopyHookW, 0x000214FCL, 0, 0);
|
||||||
DEFINE_SHLGUID(IID_IRemoteComputer, 0x000214FEL, 0, 0);
|
DEFINE_SHLGUID(IID_IRemoteComputer, 0x000214FEL, 0, 0);
|
||||||
DEFINE_SHLGUID(IID_IQueryInfo, 0x00021500L, 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_IEnumIDList, 0x000214F2L, 0, 0);
|
||||||
DEFINE_SHLGUID(IID_IShellLinkW, 0x000214F9L, 0, 0);
|
DEFINE_SHLGUID(IID_IShellLinkW, 0x000214F9L, 0, 0);
|
||||||
#endif
|
#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);
|
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__ */
|
#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
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue