mirror of
https://github.com/reactos/reactos.git
synced 2025-08-06 15:43:19 +00:00
[SHELL32][SDK] Implement RealShellExecute(,Ex)(A,W) (#5849)
Implementing missing features... JIRA issue: CORE-19278 - Modify shell32.spec. - Implement RealShellExecuteA, RealShellExecuteW, RealShellExecuteExA, and RealShellExecuteExW functions. - Add the prototypes to <undocshell.h>. - Modify SEE_MASK_... constants.
This commit is contained in:
parent
1ad90967d7
commit
10d9e9de05
5 changed files with 260 additions and 111 deletions
|
@ -37,7 +37,7 @@ extern "C" {
|
|||
#define SEE_MASK_UNICODE 0x00004000
|
||||
#define SEE_MASK_NO_CONSOLE 0x00008000
|
||||
/*
|
||||
* NOTE: The following three flags are undocumented and are not present in the
|
||||
* NOTE: The following 5 flags are undocumented and are not present in the
|
||||
* official Windows SDK. However they are used in shobjidl.idl to define some
|
||||
* CMIC_MASK_* flags, these ones being mentioned in the MSDN documentation of
|
||||
* the CMINVOKECOMMANDINFOEX structure.
|
||||
|
@ -45,9 +45,11 @@ extern "C" {
|
|||
* course their values may differ from the real ones, however I have no way
|
||||
* of discovering them. If somebody else can verify them, it would be great.
|
||||
*/
|
||||
#define SEE_MASK_HASLINKNAME 0x00010000
|
||||
#define SEE_MASK_HASTITLE 0x00020000
|
||||
#define SEE_MASK_FLAG_SEPVDM 0x00040000
|
||||
#define SEE_MASK_UNKNOWN_0x1000 0x00001000 /* FIXME: Name */
|
||||
#define SEE_MASK_HASLINKNAME 0x00010000
|
||||
#define SEE_MASK_FLAG_SEPVDM 0x00020000
|
||||
#define SEE_MASK_USE_RESERVED 0x00040000
|
||||
#define SEE_MASK_HASTITLE 0x00080000
|
||||
/* END NOTE */
|
||||
#define SEE_MASK_ASYNCOK 0x00100000
|
||||
#define SEE_MASK_HMONITOR 0x00200000
|
||||
|
@ -55,6 +57,7 @@ extern "C" {
|
|||
#define SEE_MASK_NOQUERYCLASSSTORE 0x01000000
|
||||
#define SEE_MASK_WAITFORINPUTIDLE 0x02000000
|
||||
#define SEE_MASK_FLAG_LOG_USAGE 0x04000000
|
||||
#define SEE_MASK_FLAG_HINST_IS_SITE 0x08000000
|
||||
|
||||
#define ABM_NEW 0
|
||||
#define ABM_REMOVE 1
|
||||
|
|
|
@ -23,7 +23,6 @@
|
|||
extern "C" {
|
||||
#endif /* defined(__cplusplus) */
|
||||
|
||||
|
||||
#if (NTDDI_VERSION < NTDDI_LONGHORN)
|
||||
#define DBIMF_NOGRIPPER 0x0800
|
||||
#define DBIMF_ALWAYSGRIPPER 0x1000
|
||||
|
@ -615,6 +614,60 @@ HRESULT WINAPI ShellExecCmdLine(
|
|||
LPVOID pUnused,
|
||||
DWORD dwSeclFlags);
|
||||
|
||||
HINSTANCE WINAPI
|
||||
RealShellExecuteA(
|
||||
_In_opt_ HWND hwnd,
|
||||
_In_opt_ LPCSTR lpOperation,
|
||||
_In_opt_ LPCSTR lpFile,
|
||||
_In_opt_ LPCSTR lpParameters,
|
||||
_In_opt_ LPCSTR lpDirectory,
|
||||
_In_opt_ LPSTR lpReturn,
|
||||
_In_opt_ LPCSTR lpTitle,
|
||||
_In_opt_ LPVOID lpReserved,
|
||||
_In_ INT nCmdShow,
|
||||
_Out_opt_ PHANDLE lphProcess);
|
||||
|
||||
HINSTANCE WINAPI
|
||||
RealShellExecuteW(
|
||||
_In_opt_ HWND hwnd,
|
||||
_In_opt_ LPCWSTR lpOperation,
|
||||
_In_opt_ LPCWSTR lpFile,
|
||||
_In_opt_ LPCWSTR lpParameters,
|
||||
_In_opt_ LPCWSTR lpDirectory,
|
||||
_In_opt_ LPWSTR lpReturn,
|
||||
_In_opt_ LPCWSTR lpTitle,
|
||||
_In_opt_ LPVOID lpReserved,
|
||||
_In_ INT nCmdShow,
|
||||
_Out_opt_ PHANDLE lphProcess);
|
||||
|
||||
HINSTANCE WINAPI
|
||||
RealShellExecuteExA(
|
||||
_In_opt_ HWND hwnd,
|
||||
_In_opt_ LPCSTR lpOperation,
|
||||
_In_opt_ LPCSTR lpFile,
|
||||
_In_opt_ LPCSTR lpParameters,
|
||||
_In_opt_ LPCSTR lpDirectory,
|
||||
_In_opt_ LPSTR lpReturn,
|
||||
_In_opt_ LPCSTR lpTitle,
|
||||
_In_opt_ LPVOID lpReserved,
|
||||
_In_ INT nCmdShow,
|
||||
_Out_opt_ PHANDLE lphProcess,
|
||||
_In_ DWORD dwFlags);
|
||||
|
||||
HINSTANCE WINAPI
|
||||
RealShellExecuteExW(
|
||||
_In_opt_ HWND hwnd,
|
||||
_In_opt_ LPCWSTR lpOperation,
|
||||
_In_opt_ LPCWSTR lpFile,
|
||||
_In_opt_ LPCWSTR lpParameters,
|
||||
_In_opt_ LPCWSTR lpDirectory,
|
||||
_In_opt_ LPWSTR lpReturn,
|
||||
_In_opt_ LPCWSTR lpTitle,
|
||||
_In_opt_ LPVOID lpReserved,
|
||||
_In_ INT nCmdShow,
|
||||
_Out_opt_ PHANDLE lphProcess,
|
||||
_In_ DWORD dwFlags);
|
||||
|
||||
/* RegisterShellHook types */
|
||||
#define RSH_DEREGISTER 0
|
||||
#define RSH_REGISTER 1
|
||||
|
@ -800,7 +853,7 @@ DWORD WINAPI WinList_Init(void);
|
|||
|
||||
IStream* WINAPI SHGetViewStream(LPCITEMIDLIST, DWORD, LPCTSTR, LPCTSTR, LPCTSTR);
|
||||
|
||||
EXTERN_C HRESULT WINAPI SHCreateSessionKey(REGSAM samDesired, PHKEY phKey);
|
||||
HRESULT WINAPI SHCreateSessionKey(REGSAM samDesired, PHKEY phKey);
|
||||
|
||||
LONG WINAPI SHRegQueryValueExA(
|
||||
HKEY hkey,
|
||||
|
@ -822,7 +875,6 @@ LONG WINAPI SHRegQueryValueExW(
|
|||
#define SHRegQueryValueEx SHRegQueryValueExA
|
||||
#endif
|
||||
|
||||
EXTERN_C
|
||||
HRESULT WINAPI
|
||||
CopyStreamUI(
|
||||
_In_ IStream *pSrc,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue