Author: hbelusca Date: Wed Mar 13 01:19:43 2013 New Revision: 58479
URL: http://svn.reactos.org/svn/reactos?rev=58479&view=rev Log: [PSDK] - Define all the missing STARTF_* flags needed for the STARTUPINFO structure (taken from http://msdn.microsoft.com/en-us/library/windows/desktop/ms686331(v=vs.85).as...). Amongst them is the STARTF_TITLEISLINKNAME flag that I use in the console server to determine whether a console app was started from a shell link, and if so, extract the name of the link and its icon.
- Define all the missing SEE_MASK_* flags needed for the SHELLEXECUTEINFO structure, but the Windows 8 flag (taken from http://msdn.microsoft.com/en-us/library/windows/desktop/bb759784(v=vs.85).as...). Furthermore I add three undocumented flags, SEE_MASK_HASLINKNAME, SEE_MASK_HASTITLE and SEE_MASK_FLAG_SEPVDM. These three flags are undocumented and even 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 (see http://msdn.microsoft.com/en-us/library/windows/desktop/bb773217(v=vs.85).as...). So I affect them a range of values which seems to be strangely empty (see the code). Of 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.
Modified: branches/ros-csrss/include/psdk/shellapi.h branches/ros-csrss/include/psdk/winbase.h
Modified: branches/ros-csrss/include/psdk/shellapi.h URL: http://svn.reactos.org/svn/reactos/branches/ros-csrss/include/psdk/shellapi.... ============================================================================== --- branches/ros-csrss/include/psdk/shellapi.h [iso-8859-1] (original) +++ branches/ros-csrss/include/psdk/shellapi.h [iso-8859-1] Wed Mar 13 01:19:43 2013 @@ -20,23 +20,42 @@ #define ABE_BOTTOM 3 #define ABS_AUTOHIDE 1 #define ABS_ALWAYSONTOP 2 -#define SEE_MASK_CLASSNAME 1 -#define SEE_MASK_CLASSKEY 3 -#define SEE_MASK_IDLIST 4 -#define SEE_MASK_INVOKEIDLIST 12 -#define SEE_MASK_ICON 0x10 -#define SEE_MASK_HOTKEY 0x20 -#define SEE_MASK_NOCLOSEPROCESS 0x40 -#define SEE_MASK_CONNECTNETDRV 0x80 + +#define SEE_MASK_DEFAULT 0x00000000 +#define SEE_MASK_CLASSNAME 0x00000001 +#define SEE_MASK_CLASSKEY 0x00000003 +#define SEE_MASK_IDLIST 0x00000004 +#define SEE_MASK_INVOKEIDLIST 0x0000000C +#define SEE_MASK_ICON 0x00000010 +#define SEE_MASK_HOTKEY 0x00000020 +#define SEE_MASK_NOCLOSEPROCESS 0x00000040 +#define SEE_MASK_CONNECTNETDRV 0x00000080 #define SEE_MASK_NOASYNC 0x00000100 #define SEE_MASK_FLAG_DDEWAIT SEE_MASK_NOASYNC -#define SEE_MASK_DOENVSUBST 0x200 -#define SEE_MASK_FLAG_NO_UI 0x400 -#define SEE_MASK_NO_CONSOLE 0x8000 -#define SEE_MASK_UNICODE 0x10000 -#define SEE_MASK_ASYNCOK 0x100000 -#define SEE_MASK_HMONITOR 0x200000 -#define SEE_MASK_NOZONECHECKS 0x00800000 +#define SEE_MASK_DOENVSUBST 0x00000200 +#define SEE_MASK_FLAG_NO_UI 0x00000400 +#define SEE_MASK_UNICODE 0x00004000 +#define SEE_MASK_NO_CONSOLE 0x00008000 +/* + * NOTE: The following three 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. + * I affect them this range of values which seems to be strangely empty. Of + * 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 +/* END NOTE */ +#define SEE_MASK_ASYNCOK 0x00100000 +#define SEE_MASK_HMONITOR 0x00200000 +#define SEE_MASK_NOZONECHECKS 0x00800000 +#define SEE_MASK_NOQUERYCLASSSTORE 0x01000000 +#define SEE_MASK_WAITFORINPUTIDLE 0x02000000 +#define SEE_MASK_FLAG_LOG_USAGE 0x04000000 + #define ABM_NEW 0 #define ABM_REMOVE 1 #define ABM_QUERYPOS 2
Modified: branches/ros-csrss/include/psdk/winbase.h URL: http://svn.reactos.org/svn/reactos/branches/ros-csrss/include/psdk/winbase.h... ============================================================================== --- branches/ros-csrss/include/psdk/winbase.h [iso-8859-1] (original) +++ branches/ros-csrss/include/psdk/winbase.h [iso-8859-1] Wed Mar 13 01:19:43 2013 @@ -467,16 +467,23 @@ #define STREAM_MODIFIED_WHEN_READ 1 #define STREAM_CONTAINS_SECURITY 2 #define STREAM_CONTAINS_PROPERTIES 4 -#define STARTF_USESHOWWINDOW 1 -#define STARTF_USESIZE 2 -#define STARTF_USEPOSITION 4 -#define STARTF_USECOUNTCHARS 8 -#define STARTF_USEFILLATTRIBUTE 16 -#define STARTF_RUNFULLSCREEN 32 -#define STARTF_FORCEONFEEDBACK 64 -#define STARTF_FORCEOFFFEEDBACK 128 -#define STARTF_USESTDHANDLES 256 -#define STARTF_USEHOTKEY 512 + +#define STARTF_USESHOWWINDOW 0x00000001 +#define STARTF_USESIZE 0x00000002 +#define STARTF_USEPOSITION 0x00000004 +#define STARTF_USECOUNTCHARS 0x00000008 +#define STARTF_USEFILLATTRIBUTE 0x00000010 +#define STARTF_RUNFULLSCREEN 0x00000020 +#define STARTF_FORCEONFEEDBACK 0x00000040 +#define STARTF_FORCEOFFFEEDBACK 0x00000080 +#define STARTF_USESTDHANDLES 0x00000100 +#if (WINVER >= 0x400) +#define STARTF_USEHOTKEY 0x00000200 +#define STARTF_TITLEISLINKNAME 0x00000800 +#define STARTF_TITLEISAPPID 0x00001000 +#define STARTF_PREVENTPINNING 0x00002000 +#endif /* (WINVER >= 0x400) */ + #define TC_NORMAL 0 #define TC_HARDERR 1 #define TC_GP_TRAP 2