35#define WIN32_NO_STATUS
50DEFINE_GUID(GUID_Restrictions, 0xA48F1A32, 0xA340, 0x11D1, 0xBC, 0x6B, 0x00, 0xA0, 0xC9, 0x03, 0x12, 0xE1);
52#define DEFINE_POLICY(policy, appstr, keystr) \
53 { policy, L##appstr, L##keystr }
74 return SHELL_StrCmpLogical(
s1,
s2);
79static void SH32_RestrictionsChanged()
81 SHELL_StrCmpLogical = SHELL_StrCmpLogicalInit;
105 if (*phGlobalCounter)
106 return *phGlobalCounter;
110 return *phGlobalCounter;
168 TRACE(
"(0x%08lX)\n", rest);
174 SH32_RestrictionsChanged();
203 lstrcmpiW(
L"Software\\Microsoft\\Windows\\CurrentVersion\\Policies", pszKey) != 0)
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
void shell(int argc, const char *argv[])
int WINAPI lstrcmpiW(LPCWSTR str1, LPCWSTR str2)
int WINAPI StrCmpLogicalW(const WCHAR *str, const WCHAR *comp)
int WINAPI StrCmpIW(const WCHAR *str, const WCHAR *comp)
DWORD WINAPI SHRestrictionLookup(DWORD policy, LPCWSTR initial, LPPOLICYDATA polTable, LPDWORD polArr)
HANDLE WINAPI SHGlobalCounterCreate(REFGUID guid)
LONG WINAPI SHGlobalCounterGetValue(HANDLE hSem)
LONG WINAPI SHGlobalCounterIncrement(HANDLE hSem)
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
#define FillMemory(BUF, SIZ, MASK)
#define InterlockedCompareExchangePointer
#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8)
BOOL WINAPI SHSettingsChanged(LPCVOID unused, LPCWSTR pszKey)
static BOOL SHELL_QueryRestrictionsChanged(VOID)
static HANDLE SHELL_GetRestrictionsCounter(VOID)
DWORD g_RestValues[_countof(s_PolicyTable)]
static const POLICYDATA s_PolicyTable[]
HANDLE g_hRestGlobalCounter
DWORD WINAPI SHRestricted(RESTRICTIONS rest)
static HANDLE SHELL_GetCachedGlobalCounter(_Inout_ HANDLE *phGlobalCounter, _In_ REFGUID rguid)
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value