Moved definition of newly documented API SHRestricted() and the
according policy definitions to shlobj.h.
Replace the policy numeric values with the new official defines and
change SHRestricted() to match the new documented prototype.
diff --git a/include/shlobj.h b/include/shlobj.h
index cdc98da..7740fba 100644
--- a/include/shlobj.h
+++ b/include/shlobj.h
@@ -496,6 +496,181 @@
#define SSF_HIDEICONS 0x4000
/****************************************************************************
+* SHRestricted API
+*/
+typedef enum RESTRICTIONS
+{
+ REST_NONE = 0x00000000,
+ REST_NORUN = 0x00000001,
+ REST_NOCLOSE = 0x00000002,
+ REST_NOSAVESET = 0x00000004,
+ REST_NOFILEMENU = 0x00000008,
+ REST_NOSETFOLDERS = 0x00000010,
+ REST_NOSETTASKBAR = 0x00000020,
+ REST_NODESKTOP = 0x00000040,
+ REST_NOFIND = 0x00000080,
+ REST_NODRIVES = 0x00000100,
+ REST_NODRIVEAUTORUN = 0x00000200,
+ REST_NODRIVETYPEAUTORUN = 0x00000400,
+ REST_NONETHOOD = 0x00000800,
+ REST_STARTBANNER = 0x00001000,
+ REST_RESTRICTRUN = 0x00002000,
+ REST_NOPRINTERTABS = 0x00004000,
+ REST_NOPRINTERDELETE = 0x00008000,
+ REST_NOPRINTERADD = 0x00010000,
+ REST_NOSTARTMENUSUBFOLDERS = 0x00020000,
+ REST_MYDOCSONNET = 0x00040000,
+ REST_NOEXITTODOS = 0x00080000,
+ REST_ENFORCESHELLEXTSECURITY = 0x00100000,
+ REST_LINKRESOLVEIGNORELINKINFO = 0x00200000,
+ REST_NOCOMMONGROUPS = 0x00400000,
+ REST_SEPARATEDESKTOPPROCESS = 0x00800000,
+ REST_NOWEB = 0x01000000,
+ REST_NOTRAYCONTEXTMENU = 0x02000000,
+ REST_NOVIEWCONTEXTMENU = 0x04000000,
+ REST_NONETCONNECTDISCONNECT = 0x08000000,
+ REST_STARTMENULOGOFF = 0x10000000,
+ REST_NOSETTINGSASSIST = 0x20000000,
+ REST_NOINTERNETICON = 0x40000001,
+ REST_NORECENTDOCSHISTORY,
+ REST_NORECENTDOCSMENU,
+ REST_NOACTIVEDESKTOP,
+ REST_NOACTIVEDESKTOPCHANGES,
+ REST_NOFAVORITESMENU,
+ REST_CLEARRECENTDOCSONEXIT,
+ REST_CLASSICSHELL,
+ REST_NOCUSTOMIZEWEBVIEW,
+
+ REST_NOHTMLWALLPAPER = 0x40000010,
+ REST_NOCHANGINGWALLPAPER,
+ REST_NODESKCOMP,
+ REST_NOADDDESKCOMP,
+ REST_NODELDESKCOMP,
+ REST_NOCLOSEDESKCOMP,
+ REST_NOCLOSE_DRAGDROPBAND,
+ REST_NOMOVINGBAND,
+ REST_NOEDITDESKCOMP,
+ REST_NORESOLVESEARCH,
+ REST_NORESOLVETRACK,
+ REST_FORCECOPYACLWITHFILE,
+ REST_NOLOGO3CHANNELNOTIFY,
+ REST_NOFORGETSOFTWAREUPDATE,
+ REST_NOSETACTIVEDESKTOP,
+ REST_NOUPDATEWINDOWS,
+ REST_NOCHANGESTARMENU, /* 0x40000020 */
+ REST_NOFOLDEROPTIONS,
+ REST_HASFINDCOMPUTERS,
+ REST_INTELLIMENUS,
+ REST_RUNDLGMEMCHECKBOX,
+ REST_ARP_ShowPostSetup,
+ REST_NOCSC,
+ REST_NOCONTROLPANEL,
+ REST_ENUMWORKGROUP,
+ REST_ARP_NOARP,
+ REST_ARP_NOREMOVEPAGE,
+ REST_ARP_NOADDPAGE,
+ REST_ARP_NOWINSETUPPAGE,
+ REST_GREYMSIADS,
+ REST_NOCHANGEMAPPEDDRIVELABEL,
+ REST_NOCHANGEMAPPEDDRIVECOMMENT,
+ REST_MaxRecentDocs, /* 0x40000030 */
+ REST_NONETWORKCONNECTIONS,
+ REST_FORCESTARTMENULOGOFF,
+ REST_NOWEBVIEW,
+ REST_NOCUSTOMIZETHISFOLDER,
+ REST_NOENCRYPTION,
+
+ REST_ALLOWFRENCHENCRYPTION, /* not documented */
+
+ REST_DONTSHOWSUPERHIDDEN,
+ REST_NOSHELLSEARCHBUTTON,
+ REST_NOHARDWARETAB,
+ REST_NORUNASINSTALLPROMPT,
+ REST_PROMPTRUNASINSTALLNETPATH,
+ REST_NOMANAGEMYCOMPUTERVERB,
+ REST_NORECENTDOCSNETHOOD,
+ REST_DISALLOWRUN,
+ REST_NOWELCOMESCREEN,
+ REST_RESTRICTCPL, /* 0x40000040 */
+ REST_DISALLOWCPL,
+ REST_NOSMBALLOONTIP,
+ REST_NOSMHELP,
+ REST_NOWINKEYS,
+ REST_NOENCRYPTONMOVE,
+ REST_NOLOCALMACHINERUN,
+ REST_NOCURRENTUSERRUN,
+ REST_NOLOCALMACHINERUNONCE,
+ REST_NOCURRENTUSERRUNONCE,
+ REST_FORCEACTIVEDESKTOPON,
+ REST_NOCOMPUTERSNEARME,
+ REST_NOVIEWONDRIVE,
+ REST_NONETCRAWL,
+ REST_NOSHAREDDOCUMENTS,
+ REST_NOSMMYDOCS,
+ REST_NOSMMYPICS, /* 0x40000050 */
+ REST_ALLOWBITBUCKDRIVES,
+ REST_NONLEGACYSHELLMODE,
+ REST_NOCONTROLPANELBARRICADE,
+ REST_NOSTARTPAGE,
+ REST_NOAUTOTRAYNOTIFY,
+ REST_NOTASKGROUPING,
+ REST_NOCDBURNING,
+ REST_MYCOMPNOPROP,
+ REST_MYDOCSNOPROP,
+ REST_NOSTARTPANEL,
+ REST_NODISPLAYAPPEARANCEPAGE,
+ REST_NOTHEMESTAB,
+ REST_NOVISUALSTYLECHOICE,
+ REST_NOSIZECHOICE,
+ REST_NOCOLORCHOICE,
+ REST_SETVISUALSTYLE, /* 0x40000060 */
+ REST_STARTRUNNOHOMEPATH,
+ REST_NOUSERNAMEINSTARTPANEL,
+ REST_NOMYCOMPUTERICON,
+ REST_NOSMNETWORKPLACES,
+ REST_NOSMPINNEDLIST,
+ REST_NOSMMYMUSIC,
+ REST_NOSMEJECTPC,
+ REST_NOSMMOREPROGRAMS,
+ REST_NOSMMFUPROGRAMS,
+ REST_NOTRAYITEMSDISPLAY,
+ REST_NOTOOLBARSONTASKBAR,
+ /* 0x4000006C
+ 0x4000006D
+ 0x4000006E */
+ REST_NOSMCONFIGUREPROGRAMS = 0x4000006F,
+ REST_HIDECLOCK, /* 0x40000070 */
+ REST_NOLOWDISKSPACECHECKS,
+ REST_NOENTIRENETWORK,
+ REST_NODESKTOPCLEANUP,
+ REST_BITBUCKNUKEONDELETE,
+ REST_BITBUCKCONFIRMDELETE,
+ REST_BITBUCKNOPROP,
+ REST_NODISPBACKGROUND,
+ REST_NODISPSCREENSAVEPG,
+ REST_NODISPSETTINGSPG,
+ REST_NODISPSCREENSAVEPREVIEW,
+ REST_NODISPLAYCPL,
+ REST_HIDERUNASVERB,
+ REST_NOTHUMBNAILCACHE,
+ REST_NOSTRCMPLOGICAL,
+ REST_NOPUBLISHWIZARD,
+ REST_NOONLINEPRINTSWIZARD, /* 0x40000080 */
+ REST_NOWEBSERVICES,
+ REST_ALLOWUNHASHEDWEBVIEW,
+ REST_ALLOWLEGACYWEBVIEW,
+ REST_REVERTWEBVIEWSECURITY,
+
+ REST_INHERITCONSOLEHANDLES = 0x40000086,
+
+ REST_NODISCONNECT = 0x41000001,
+ REST_NOSECURITY,
+ REST_NOFILEASSOCIATE, /* 0x41000003 */
+} RESTRICTIONS;
+
+DWORD WINAPI SHRestricted(RESTRICTIONS rest);
+
+/****************************************************************************
* SHChangeNotify API
*/
typedef struct _SHChangeNotifyEntry