[PSDK]: Update shlobj.h:

- Define Logo3-related symbols only when NTDDI_VERSION < NTDDI_LONGHORN (Vista);
- In the SHELL_LINK_DATA_FLAGS enumeration, some symbols are defined for Vista+ only;
- Update the comment for EXP_LOGO3_ID_SIG;
- The PRF_TRYPROGRAMEXTENSIONS define is actually the combination of PRF_EXECUTABLE and PRF_VERIFYEXISTS;
- Add PRF_REQUIREABSOLUTE and fix PRF_DONTFINDLNK typo.

svn path=/trunk/; revision=73567
This commit is contained in:
Hermès Bélusca-Maïto 2017-01-17 15:30:57 +00:00
parent 9dda28415f
commit c31e1f67a6

View file

@ -1438,8 +1438,10 @@ typedef enum RESTRICTIONS
REST_NORESOLVESEARCH,
REST_NORESOLVETRACK,
REST_FORCECOPYACLWITHFILE,
REST_NOLOGO3CHANNELNOTIFY,
REST_NOFORGETSOFTWAREUPDATE,
#if (NTDDI_VERSION < NTDDI_LONGHORN)
REST_NOLOGO3CHANNELNOTIFY = 0x4000001C,
#endif
REST_NOFORGETSOFTWAREUPDATE = 0x4000001D,
REST_NOSETACTIVEDESKTOP,
REST_NOUPDATEWINDOWS,
REST_NOCHANGESTARMENU, /* 0x40000020 */
@ -1629,13 +1631,16 @@ typedef enum {
SLDF_FORCE_NO_LINKINFO = 0x00000100,
SLDF_HAS_EXP_SZ = 0x00000200,
SLDF_RUN_IN_SEPARATE = 0x00000400,
#if (NTDDI_VERSION < NTDDI_LONGHORN)
SLDF_HAS_LOGO3ID = 0x00000800,
#endif
SLDF_HAS_DARWINID = 0x00001000,
SLDF_RUNAS_USER = 0x00002000,
SLDF_HAS_EXP_ICON_SZ = 0x00004000,
SLDF_NO_PIDL_ALIAS = 0x00008000,
SLDF_FORCE_UNCNAME = 0x00010000,
SLDF_RUN_WITH_SHIMLAYER = 0x00020000,
#if (NTDDI_VERSION >= NTDDI_LONGHORN)
SLDF_FORCE_NO_LINKTRACK = 0x00040000,
SLDF_ENABLE_TARGET_METADATA = 0x00080000,
SLDF_DISABLE_LINK_PATH_TRACKING = 0x00100000,
@ -1654,6 +1659,7 @@ typedef enum {
#endif
#else
SLDF_VALID = 0x003ff7ff, /* Windows Vista */
#endif
#endif
SLDF_RESERVED = 0x80000000,
} SHELL_LINK_DATA_FLAGS;
@ -1664,32 +1670,6 @@ typedef struct tagDATABLOCKHEADER
DWORD dwSignature;
} DATABLOCK_HEADER, *LPDATABLOCK_HEADER, *LPDBLIST;
typedef struct {
DATABLOCK_HEADER dbh;
CHAR szDarwinID[MAX_PATH];
WCHAR szwDarwinID[MAX_PATH];
} EXP_DARWIN_LINK, *LPEXP_DARWIN_LINK;
typedef struct {
DWORD cbSize;
DWORD dwSignature;
CHAR szTarget[MAX_PATH];
WCHAR szwTarget[MAX_PATH];
} EXP_SZ_LINK, *LPEXP_SZ_LINK;
typedef struct {
DWORD cbSize;
DWORD dwSignature;
DWORD idSpecialFolder;
DWORD cbOffset;
} EXP_SPECIAL_FOLDER, *LPEXP_SPECIAL_FOLDER;
typedef struct {
DWORD cbSize;
DWORD dwSignature;
BYTE abPropertyStorage[1];
} EXP_PROPERTYSTORAGE;
#ifdef LF_FACESIZE
typedef struct {
DATABLOCK_HEADER dbh;
@ -1721,14 +1701,42 @@ typedef struct {
UINT uCodePage;
} NT_FE_CONSOLE_PROPS, *LPNT_FE_CONSOLE_PROPS;
#define EXP_SZ_LINK_SIG 0xa0000001 /* EXP_SZ_LINK */
#define NT_CONSOLE_PROPS_SIG 0xa0000002 /* NT_CONSOLE_PROPS */
#define NT_FE_CONSOLE_PROPS_SIG 0xa0000004 /* NT_FE_CONSOLE_PROPS */
#define EXP_SPECIAL_FOLDER_SIG 0xa0000005 /* EXP_SPECIAL_FOLDER */
#define EXP_DARWIN_ID_SIG 0xa0000006 /* EXP_DARWIN_LINK */
#define EXP_SZ_ICON_SIG 0xa0000007 /* EXP_SZ_LINK */
#define EXP_LOGO3_ID_SIG EXP_SZ_ICON_SIG /* Old SDKs only */
#define EXP_PROPERTYSTORAGE_SIG 0xa0000009 /* EXP_PROPERTYSTORAGE */
typedef struct {
DWORD cbSize;
DWORD dwSignature;
CHAR szTarget[MAX_PATH];
WCHAR szwTarget[MAX_PATH];
} EXP_SZ_LINK, *LPEXP_SZ_LINK;
typedef struct {
DATABLOCK_HEADER dbh;
CHAR szDarwinID[MAX_PATH];
WCHAR szwDarwinID[MAX_PATH];
} EXP_DARWIN_LINK, *LPEXP_DARWIN_LINK;
typedef struct {
DWORD cbSize;
DWORD dwSignature;
DWORD idSpecialFolder;
DWORD cbOffset;
} EXP_SPECIAL_FOLDER, *LPEXP_SPECIAL_FOLDER;
typedef struct {
DWORD cbSize;
DWORD dwSignature;
BYTE abPropertyStorage[1];
} EXP_PROPERTYSTORAGE;
#define EXP_SZ_LINK_SIG 0xA0000001 /* EXP_SZ_LINK */
#define NT_CONSOLE_PROPS_SIG 0xA0000002 /* NT_CONSOLE_PROPS */
#define NT_FE_CONSOLE_PROPS_SIG 0xA0000004 /* NT_FE_CONSOLE_PROPS */
#define EXP_SPECIAL_FOLDER_SIG 0xA0000005 /* EXP_SPECIAL_FOLDER */
#define EXP_DARWIN_ID_SIG 0xA0000006 /* EXP_DARWIN_LINK */
#if (NTDDI_VERSION < NTDDI_LONGHORN)
#define EXP_LOGO3_ID_SIG 0xA0000007 /* EXP_DARWIN_LINK, for Logo3 / MS Internet Component Download (MSICD) shortcuts; old SDKs only (deprecated) */
#endif
#define EXP_SZ_ICON_SIG 0xA0000007 /* EXP_SZ_LINK */
#define EXP_PROPERTYSTORAGE_SIG 0xA0000009 /* EXP_PROPERTYSTORAGE */
typedef struct _SHChangeDWORDAsIDList {
USHORT cb;
@ -2056,9 +2064,12 @@ BOOL WINAPI WriteCabinetState(_In_ CABINETSTATE *);
/* PathResolve flags */
#define PRF_VERIFYEXISTS 0x01
#define PRF_EXECUTABLE 0x02
#define PRF_TRYPROGRAMEXTENSIONS 0x03
#define PRF_TRYPROGRAMEXTENSIONS (PRF_EXECUTABLE | PRF_VERIFYEXISTS)
#define PRF_FIRSTDIRDEF 0x04
#define PRF_DONTFINDLINK 0x08
#define PRF_DONTFINDLNK 0x08 // Used when PRF_TRYPROGRAMEXTENSIONS is specified
#if (NTDDI_VERSION >= NTDDI_WINXPSP2)
#define PRF_REQUIREABSOLUTE 0x10
#endif
VOID WINAPI PathGetShortPath(_Inout_updates_(MAX_PATH) LPWSTR pszPath);