ReactOS 0.4.16-dev-1946-g52006dd
shlwapi_undoc.h
Go to the documentation of this file.
1/*
2 * PROJECT: ReactOS header
3 * LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
4 * PURPOSE: Undocumented SHLWAPI definitions
5 * COPYRIGHT: Copyright 2009 Andrew Hill <ash77 at domain reactos.org>
6 * Copyright 2025 Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
7 */
8
9#pragma once
10
11#include <winreg.h> // For REGSAM
12
13#ifdef __cplusplus
14extern "C" {
15#endif
16
17/*****************************************************************************
18 * ASSOCQUERY --- The type flags of association query
19 *
20 * @see IAssociationElementOld, IAssociationElement, IAssociationArrayOld, IAssociationArray
21 * @see https://www.geoffchappell.com/studies/windows/shell/shell32/api/assocelem/query.htm
22 */
24#define ASSOCQUERY_LOWORD_MASK 0x0000FFFF // The low-order word of flags
25#define ASSOCQUERY_STRING 0x00010000 // Responds to QueryString method
26#define ASSOCQUERY_EXISTS 0x00020000 // Responds to QueryExists method
27#define ASSOCQUERY_DIRECT 0x00040000 // Responds to QueryDirect method
28#define ASSOCQUERY_DWORD 0x00080000 // Responds to QueryDword method
29#define ASSOCQUERY_INDIRECT 0x00100000 // Obtains resource string from QueryString
30#define ASSOCQUERY_OBJECT 0x00200000 // Responds to QueryObject method
31#define ASSOCQUERY_GUID 0x00400000 // Responds to QueryGuid method
32#define ASSOCQUERY_EXTRA_NON_VERB 0x01000000 // Expects pszExtra for path or value
33#define ASSOCQUERY_EXTRA_VERB 0x02000000 // Expects pszExtra for verb
34#define ASSOCQUERY_SIGNIFICANCE 0x04000000 // Significance unknown
35#define ASSOCQUERY_FALLBACK 0x80000000 // Fallback to secondary query source
36
37#define SHELL_NO_POLICY ((DWORD)-1)
38
39typedef struct tagPOLICYDATA
40{
41 DWORD policy; /* flags value passed to SHRestricted */
42 LPCWSTR appstr; /* application str such as "Explorer" */
43 LPCWSTR keystr; /* name of the actual registry key / policy */
45
50
51#if FALSE && ((DLL_EXPORT_VERSION) >= _WIN32_WINNT_VISTA)
52#define SHELL_GCOUNTER_DEFINE_GUID(name, a, b, c, d, e, f, g, h, i, j, k) enum { SHELLUNUSEDCOUNTERGUID_##name }
53#define SHELL_GCOUNTER_DEFINE_HANDLE(name) enum { SHELLUNUSEDCOUNTERHANDLE_##name }
54#define SHELL_GCOUNTER_PARAMETERS(handle, id) id
55#define SHELL_GlobalCounterCreate(refguid, handle) ( (refguid), (handle), (void)0 )
56#define SHELL_GlobalCounterIsInitialized(handle) ( (handle), TRUE )
57#define SHELL_GlobalCounterGet(id) SHGlobalCounterGetValue_Vista(id)
58#define SHELL_GlobalCounterIncrement(id) SHGlobalCounterIncrement_Vista(id)
59#else
60#define SHELL_GCOUNTER_DEFINE_GUID(name, a, b, c, d, e, f, g, h, i, j, k) const GUID name = { a, b, c, { d, e, f, g, h, i, j, k } }
61#define SHELL_GCOUNTER_DEFINE_HANDLE(name) HANDLE name = NULL
62#define SHELL_GCOUNTER_PARAMETERS(handle, id) handle
63#define SHELL_GlobalCounterCreate(refguid, handle) \
64 do { \
65 EXTERN_C HANDLE SHELL_GetCachedGlobalCounter(HANDLE *phGlobalCounter, REFGUID rguid); \
66 SHELL_GetCachedGlobalCounter(&(handle), (refguid)); \
67 } while (0)
68#define SHELL_GlobalCounterIsInitialized(handle) ( (handle) != NULL )
69#define SHELL_GlobalCounterGet(handle) SHGlobalCounterGetValue(handle)
70#define SHELL_GlobalCounterIncrement(handle) SHGlobalCounterIncrement(handle)
71#endif
72#define SHELL_GCOUNTER_DECLAREPARAMETERS(handle, id) SHELL_GCOUNTER_PARAMETERS(HANDLE handle, SHGLOBALCOUNTER id)
73
78 _In_ const POLICYDATA *polTable,
79 _Inout_ LPDWORD polArr);
80
83#ifdef UNICODE
84#define SHAboutInfo SHAboutInfoW
85#else
86#define SHAboutInfo SHAboutInfoA
87#endif
88
91HRESULT WINAPI IUnknown_QueryStatus(IUnknown *lpUnknown, REFGUID pguidCmdGroup, ULONG cCmds, OLECMD *prgCmds, OLECMDTEXT* pCmdText);
92HRESULT WINAPI IUnknown_Exec(IUnknown* lpUnknown, REFGUID pguidCmdGroup, DWORD nCmdID, DWORD nCmdexecopt, VARIANT* pvaIn, VARIANT* pvaOut);
95HRESULT WINAPI ConnectToConnectionPoint(IUnknown *lpUnkSink, REFIID riid, BOOL bAdviseOnly, IUnknown *lpUnknown, LPDWORD lpCookie, IConnectionPoint **lppCP);
103BOOL WINAPI SHSimulateDrop(IDropTarget *pDrop, IDataObject *pDataObj, DWORD grfKeyState, PPOINTL lpPt, DWORD* pdwEffect);
109HRESULT WINAPI SHIsExpandableFolder(LPSHELLFOLDER lpFolder, LPCITEMIDLIST pidl);
111int WINAPI SHSearchMapInt(const int *lpKeys, const int *lpValues, int iLen, int iKey);
112
115 _In_ IUnknown *lpUnknown,
116 _In_ INT nUnknown,
117 _In_opt_ REFGUID riidCmdGrp,
118 _In_ ULONG cCmds,
119 _Inout_ OLECMD *prgCmds,
120 _Inout_ OLECMDTEXT *pCmdText);
121
124 _In_ IUnknown *lpUnknown,
125 _In_ INT nUnknown,
126 _In_opt_ REFGUID pguidCmdGroup,
127 _In_ DWORD nCmdID,
128 _In_ DWORD nCmdexecopt,
129 _In_ VARIANT *pvaIn,
130 _Inout_ VARIANT *pvaOut);
131
132HRESULT WINAPI IsQSForward(_In_opt_ REFGUID pguidCmdGroup, _In_ ULONG cCmds, _In_ OLECMD *prgCmds);
137
139
140BOOL WINAPI SHAddDataBlock(LPDBLIST* lppList, const DATABLOCK_HEADER *lpNewItem);
141BOOL WINAPI SHRemoveDataBlock(LPDBLIST* lppList, DWORD dwSignature);
146
147LONG
148WINAPI
150 _In_ HKEY hKey,
151 _In_ LPCWSTR lpSubKey,
153 _In_opt_ LPWSTR lpClass,
155 _In_ REGSAM samDesired,
156 _In_opt_ LPSECURITY_ATTRIBUTES lpSecurityAttributes,
157 _Out_ PHKEY phkResult,
158 _Out_opt_ LPDWORD lpdwDisposition);
159
160/* Redirected to kernel32.ExpandEnvironmentStringsA/W */
163#ifdef UNICODE
164#define SHExpandEnvironmentStrings SHExpandEnvironmentStringsW
165#else
166#define SHExpandEnvironmentStrings SHExpandEnvironmentStringsA
167#endif
168
169/* Redirected to userenv.ExpandEnvironmentStringsForUserA/W */
170#if (WINVER >= 0x0500)
171BOOL WINAPI SHExpandEnvironmentStringsForUserA(HANDLE, LPCSTR, LPSTR, DWORD);
172BOOL WINAPI SHExpandEnvironmentStringsForUserW(HANDLE, LPCWSTR, LPWSTR, DWORD);
173#ifdef UNICODE
174#define SHExpandEnvironmentStringsForUser SHExpandEnvironmentStringsForUserW
175#else
176#define SHExpandEnvironmentStringsForUser SHExpandEnvironmentStringsForUserA
177#endif
178#endif
179
180
197
200 _Out_writes_(cchBuffer) LPWSTR pszBuffer,
203
216
218
221 _In_ HKEY hKey,
223 _In_ DWORD dwMode,
225 _Out_ void **ppvObj);
226
230 _In_opt_z_ LPCWSTR pszSection,
231 _In_ DWORD dwMode,
233 _Out_ void **ppvObj);
234
238 _In_ long flags,
240 _Outptr_ void **ppvObj);
241
243 DWORD dwStyle, HMENU hMenu, LONG_PTR wnd_extra);
244
246 DWORD dwStyle, HMENU hMenu, LONG_PTR wnd_extra);
247#ifdef UNICODE
248#define SHCreateWorkerWindow SHCreateWorkerWindowW
249#else
250#define SHCreateWorkerWindow SHCreateWorkerWindowA
251#endif
252
254HRESULT WINAPI IUnknown_GetClassID(IUnknown *lpUnknown, CLSID *lpClassId);
255HRESULT WINAPI IUnknown_QueryServiceExec(IUnknown *lpUnknown, REFIID service, const GUID *group, DWORD cmdId, DWORD cmdOpt, VARIANT *pIn, VARIANT *pOut);
257HRESULT WINAPI IUnknown_TranslateAcceleratorOCS(IUnknown *lpUnknown, LPMSG lpMsg, DWORD dwModifiers);
258HRESULT WINAPI IUnknown_OnFocusOCS(IUnknown *lpUnknown, BOOL fGotFocus);
259HRESULT WINAPI IUnknown_HandleIRestrict(LPUNKNOWN lpUnknown, PVOID lpArg1, PVOID lpArg2, PVOID lpArg3, PVOID lpArg4);
262HRESULT WINAPI IUnknown_OnFocusChangeIS(LPUNKNOWN lpUnknown, LPUNKNOWN pFocusObject, BOOL bFocus);
263
264DWORD WINAPI SHAnsiToUnicode(LPCSTR lpSrcStr, LPWSTR lpDstStr, INT iLen);
265INT WINAPI SHUnicodeToAnsi(LPCWSTR lpSrcStr, LPSTR lpDstStr, INT iLen);
266
267DWORD WINAPI SHAnsiToUnicodeCP(DWORD dwCp, LPCSTR lpSrcStr, LPWSTR lpDstStr, int iLen);
268DWORD WINAPI SHUnicodeToAnsiCP(UINT CodePage, LPCWSTR lpSrcStr, LPSTR lpDstStr, int dstlen);
269
271
273 LPDWORD pwType, LPVOID pvData, LPDWORD pbData);
275 LPDWORD pwType, LPVOID pvData, LPDWORD pbData);
278#ifdef UNICODE
279#define SHGetValueGoodBoot SHGetValueGoodBootW
280#define SHLoadRegUIString SHLoadRegUIStringW
281#else
282#define SHGetValueGoodBoot SHGetValueGoodBootA
283#define SHLoadRegUIString SHLoadRegUIStringA
284#endif
285
289 _In_z_ LPCWSTR keyName,
290 _Out_writes_to_(outLen, return + 1) LPWSTR out,
291 _In_ DWORD outLen,
293
297 _In_z_ LPCWSTR keyName,
300
303 _In_opt_z_ LPCWSTR lpAppName,
304 _In_z_ LPCWSTR lpKeyName,
305 _Out_writes_to_(nSize, return + 1) _Post_z_ LPWSTR lpReturnedString,
308
311 _In_z_ LPCWSTR lpAppName,
312 _In_z_ LPCWSTR lpKeyName,
313 _In_opt_z_ LPCWSTR lpString,
315
317{
330 SHKEY_Subkey_FileExts = 0x6000
332
334
335int
338 _In_opt_ HINSTANCE hAppInst,
340 _In_ LPCWSTR lpcText,
341 _In_opt_ LPCWSTR lpcTitle,
342 _In_ UINT fuStyle,
343 ...);
344
345/* dwWhich flags for PathFileExistsDefExtW, PathFindOnPathExW,
346 * and PathFileExistsDefExtAndAttributesW */
347#define WHICH_PIF (1 << 0)
348#define WHICH_COM (1 << 1)
349#define WHICH_EXE (1 << 2)
350#define WHICH_BAT (1 << 3)
351#define WHICH_LNK (1 << 4)
352#define WHICH_CMD (1 << 5)
353#define WHICH_OPTIONAL (1 << 6)
354
355#define WHICH_DEFAULT (WHICH_PIF | WHICH_COM | WHICH_EXE | WHICH_BAT | WHICH_LNK | WHICH_CMD)
356
357/* dwClass flags for PathIsValidCharA and PathIsValidCharW */
358#define PATH_CHAR_CLASS_LETTER 0x00000001
359#define PATH_CHAR_CLASS_ASTERIX 0x00000002
360#define PATH_CHAR_CLASS_DOT 0x00000004
361#define PATH_CHAR_CLASS_BACKSLASH 0x00000008
362#define PATH_CHAR_CLASS_COLON 0x00000010
363#define PATH_CHAR_CLASS_SEMICOLON 0x00000020
364#define PATH_CHAR_CLASS_COMMA 0x00000040
365#define PATH_CHAR_CLASS_SPACE 0x00000080
366#define PATH_CHAR_CLASS_OTHER_VALID 0x00000100
367#define PATH_CHAR_CLASS_DOUBLEQUOTE 0x00000200
368#define PATH_CHAR_CLASS_INVALID 0x00000000
369#define PATH_CHAR_CLASS_ANY 0xffffffff
370
371BOOL WINAPI PathFileExistsDefExtW(LPWSTR lpszPath, DWORD dwWhich);
372
375 _Inout_ LPWSTR pszPath,
376 _In_ DWORD dwWhich,
377 _Out_opt_ LPDWORD pdwFileAttributes);
378
379BOOL WINAPI PathFindOnPathExW(LPWSTR lpszFile, LPCWSTR *lppszOtherDirs, DWORD dwWhich);
381BOOL WINAPI PathIsValidCharA(char c, DWORD dwClass);
384#ifndef _SHLWAPI_
387#else
390#endif
391
394 _In_ IContextMenu *pContextMenu,
395 _In_ HWND hwnd,
396 _In_ LPCSTR lpVerb,
398
402
404
405/* Flags for SHGetAppCompatFlags */
406#define SHACF_CONTEXTMENU 0x00000001
407#define SHACF_FLUSHNOWAITALWAYS SHACF_CONTEXTMENU
408#define SHACF_DOCOBJECT 0x00000002
409#define SHACF_CORELINTERNETENUM 0x00000004
410#define SHACF_OLDCREATEVIEWWND SHACF_CORELINTERNETENUM
411#define SHACF_WIN95DEFVIEW SHACF_CORELINTERNETENUM
412#define SHACF_MYCOMPUTERFIRST 0x00000008
413#define SHACF_OLDREGITEMGDN 0x00000010
414// 0x00000020
415#define SHACF_LOADCOLUMNHANDLER 0x00000040
416#define SHACF_ANSI 0x00000080
417#define SHACF_UNKNOWN1 0x00000100
418#define SHACF_WIN95SHLEXEC 0x00000200
419#define SHACF_STAROFFICE5PRINTER 0x00000400
420#define SHACF_NOVALIDATEFSIDS 0x00000800
421#define SHACF_FILEOPENNEEDSEXT 0x00001000
422#define SHACF_WIN95BINDTOOBJECT 0x00002000
423#define SHACF_IGNOREENUMRESET 0x00004000
424// 0x00008000
425#define SHACF_ANSIDISPLAYNAMES 0x00010000
426#define SHACF_FILEOPENBOGUSCTRLID 0x00020000
427#define SHACF_FORCELFNIDLIST 0x00040000
428// 0x00080000
429#define SHACF_UNKNOWN2 0x01000000
430#define SHACF_UNKNOWN3 0x80000000
431
433
434/*****************************************************************************
435 * IAssociationElementOld interface
436 *
437 * @see IAssociationElement
438 * @see https://www.geoffchappell.com/studies/windows/shell/shlwapi/interfaces/iassociationelement.htm
439 */
440#define INTERFACE IAssociationElementOld
441DECLARE_INTERFACE_(IAssociationElementOld, IUnknown) // {E58B1ABF-9596-4DBA-8997-89DCDEF46992}
442{
443 /*** IUnknown ***/
447 /*** IAssociationElementOld ***/
451 STDMETHOD(QueryDirect)(THIS_ ASSOCQUERY query, PCWSTR key, FLAGGED_BYTE_BLOB **ppBlob) PURE;
453};
454#undef INTERFACE
455
456#ifdef COBJMACROS
457#define IAssociationElementOld_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
458#define IAssociationElementOld_AddRef(T) (T)->lpVtbl->AddRef(T)
459#define IAssociationElementOld_Release(T) (T)->lpVtbl->Release(T)
460#define IAssociationElementOld_QueryString(T,a,b,c) (T)->lpVtbl->QueryString(T,a,b,c)
461#define IAssociationElementOld_QueryDword(T,a,b,c) (T)->lpVtbl->QueryDword(T,a,b,c)
462#define IAssociationElementOld_QueryExists(T,a,b) (T)->lpVtbl->QueryExists(T,a,b)
463#define IAssociationElementOld_QueryDirect(T,a,b,c) (T)->lpVtbl->QueryDirect(T,a,b,c)
464#define IAssociationElementOld_QueryObject(T,a,b,c,d) (T)->lpVtbl->QueryObject(T,a,b,c,d)
465#endif
466
467#ifdef __cplusplus
468} /* extern "C" */
469#endif
static HDC hDC
Definition: 3dtext.c:33
UINT cchMax
WCHAR lpszDest[260]
WINBASEAPI _Check_return_ _Out_ AppPolicyProcessTerminationMethod * policy
Definition: appmodel.h:73
#define msg(x)
Definition: auth_time.c:54
HWND hWnd
Definition: settings.c:17
#define DECLARE_INTERFACE_(i, b)
Definition: basetyps.h:78
#define PURE
Definition: basetyps.h:64
#define THIS_
Definition: basetyps.h:65
#define EXTERN_C
Definition: basetyps.h:12
#define THIS
Definition: basetyps.h:66
#define STDMETHOD_(t, m)
Definition: basetyps.h:63
#define STDMETHOD(m)
Definition: basetyps.h:62
_In_ BOOLEAN Release
Definition: cdrom.h:920
WPARAM wParam
Definition: combotst.c:138
LPARAM lParam
Definition: combotst.c:139
static LPVOID LPUNKNOWN
Definition: dinput.c:53
UINT uFlags
Definition: api.c:59
static WCHAR unknown[MAX_STRING_RESOURCE_LEN]
Definition: object.c:1605
OLECHAR * BSTR
Definition: compat.h:2293
unsigned short VARTYPE
Definition: compat.h:2254
static DWORD cchBuffer
Definition: fusion.c:85
GUID guid
Definition: version.c:147
static REFPROPVARIANT PROPVAR_CHANGE_FLAGS VARTYPE vt
Definition: suminfo.c:91
static void *static void *static LPDIRECTPLAY IUnknown * pUnk
Definition: dplayx.c:30
HINSTANCE hInst
Definition: dxdiag.c:13
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
FxAutoRegKey hKey
PWCHAR pValue
GLsizeiptr size
Definition: glext.h:5919
GLintptr offset
Definition: glext.h:5920
const GLubyte * c
Definition: glext.h:8905
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
GLbitfield flags
Definition: glext.h:7161
GLboolean GLuint group
Definition: glext.h:11120
static LRESULT WINAPI wndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
Definition: imm32.c:185
REFIID riid
Definition: atlbase.h:39
const char * filename
Definition: ioapi.h:137
const char * appName(const char *argv0)
Definition: loadlib.c:89
LONG_PTR LPARAM
Definition: minwindef.h:175
LONG_PTR LRESULT
Definition: minwindef.h:176
UINT_PTR WPARAM
Definition: minwindef.h:174
int * LPINT
Definition: minwindef.h:151
static HDC
Definition: imagelist.c:88
static HTREEITEM hChild
Definition: treeview.c:383
static HRESULT QueryInterface(REFIID, void **)
Definition: events.c:2587
static const struct access_res create[16]
Definition: package.c:7505
static DWORD dstlen
Definition: directory.c:51
static char * dest
Definition: rtl.c:135
static ULONG WINAPI AddRef(IStream *iface)
Definition: clist.c:83
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
Definition: ordinal.c:60
_shellkey_flags
Definition: ordinal.c:2804
const CLSID * clsid
Definition: msctf.cpp:50
__int3264 LONG_PTR
Definition: mstsclib_h.h:276
_In_ HANDLE _In_ DWORD _In_ DWORD _Inout_opt_ LPOVERLAPPED _In_opt_ LPTRANSMIT_FILE_BUFFERS _In_ DWORD dwReserved
Definition: mswsock.h:95
unsigned int UINT
Definition: ndis.h:50
_In_ LPWSTR _In_ DWORD _In_ LPCVOID pvData
Definition: netsh.h:116
#define _Out_opt_
Definition: no_sal2.h:214
#define _Inout_
Definition: no_sal2.h:162
#define _In_z_
Definition: no_sal2.h:164
#define _In_opt_z_
Definition: no_sal2.h:218
#define _Outptr_
Definition: no_sal2.h:262
#define _Post_z_
Definition: no_sal2.h:508
#define _Out_writes_(s)
Definition: no_sal2.h:176
#define _Out_
Definition: no_sal2.h:160
#define _In_
Definition: no_sal2.h:158
#define _In_opt_
Definition: no_sal2.h:212
#define _Out_writes_to_(s, c)
Definition: no_sal2.h:188
short SHORT
Definition: pedump.c:59
long LONG
Definition: pedump.c:60
static const WCHAR szName[]
Definition: powrprof.c:45
#define REFIID
Definition: guiddef.h:118
_In_opt_ IUnknown * punk
Definition: shlwapi.h:158
_In_ DWORD dwProcessId
Definition: shlwapi.h:193
_In_opt_ LPCSTR pszSubKey
Definition: shlwapi.h:783
_In_ UINT uID
Definition: shlwapi.h:156
_In_opt_ LPCSTR _In_opt_ LPCSTR pszValue
Definition: shlwapi.h:783
const WCHAR * str
#define WINAPIV
Definition: sdbpapi.h:64
#define DECLSPEC_IMPORT
Definition: rpc.h:74
_In_ int _In_ BOOL bCreate
Definition: shlobj.h:1525
HRESULT WINAPI IUnknown_UIActivateIO(IUnknown *unknown, BOOL activate, LPMSG msg)
Definition: ordinal.c:1633
HRESULT WINAPI IUnknown_QueryServiceExec(IUnknown *lpUnknown, REFIID service, const GUID *group, DWORD cmdId, DWORD cmdOpt, VARIANT *pIn, VARIANT *pOut)
Definition: ordinal.c:1553
STDMETHOD() QueryDirect(THIS_ ASSOCQUERY query, PCWSTR key, FLAGGED_BYTE_BLOB **ppBlob) PURE
HRESULT WINAPI SHPropertyBag_ReadInt(IPropertyBag *ppb, LPCWSTR pszPropName, LPINT pnValue)
BOOL WINAPI SHSimulateDrop(IDropTarget *pDrop, IDataObject *pDataObj, DWORD grfKeyState, PPOINTL lpPt, DWORD *pdwEffect)
Definition: ordinal.c:1828
HRESULT WINAPI SHRegGetCLSIDKeyW(REFGUID guid, LPCWSTR lpszValue, BOOL bUseHKCU, BOOL bCreate, PHKEY phKey)
Definition: reg.c:2422
HRESULT WINAPI IUnknown_TranslateAcceleratorOCS(IUnknown *lpUnknown, LPMSG lpMsg, DWORD dwModifiers)
Definition: ordinal.c:1898
DATABLOCK_HEADER *WINAPI SHFindDataBlock(LPDBLIST lpList, DWORD dwSignature)
Definition: clist.c:424
DWORD WINAPI SHAnsiToUnicode(LPCSTR lpSrcStr, LPWSTR lpDstStr, INT iLen)
HRESULT WINAPI SHPropertyBag_WriteRECTL(IPropertyBag *ppb, LPCWSTR pszPropName, const RECTL *prcl)
HRESULT WINAPI SHPropertyBag_ReadDWORD(IPropertyBag *ppb, LPCWSTR pszPropName, DWORD *pdwValue)
STDMETHOD() QueryExists(THIS_ ASSOCQUERY query, PCWSTR key) PURE
VOID WINAPI FixSlashesAndColonW(LPWSTR)
Definition: ordinal.c:4735
DWORD WINAPI SHGetValueGoodBootA(HKEY hkey, LPCSTR pSubKey, LPCSTR pValue, LPDWORD pwType, LPVOID pvData, LPDWORD pbData)
Definition: reg.c:1877
HRESULT WINAPI SHPropertyBag_ReadSHORT(IPropertyBag *ppb, LPCWSTR pszPropName, SHORT *psValue)
HRESULT WINAPI CLSIDFromStringWrap(_In_ LPCWSTR idstr, _Out_ CLSID *id)
HMENU WINAPI SHGetMenuFromID(HMENU hMenu, UINT uID)
Definition: ordinal.c:1997
HRESULT WINAPI IUnknown_HandleIRestrict(LPUNKNOWN lpUnknown, PVOID lpArg1, PVOID lpArg2, PVOID lpArg3, PVOID lpArg4)
Definition: ordinal.c:1953
HRESULT WINAPI SHPropertyBag_ReadGUID(IPropertyBag *ppb, LPCWSTR pszPropName, GUID *pguid)
BOOL WINAPI SHPropertyBag_ReadBOOLOld(IPropertyBag *ppb, LPCWSTR pszPropName, BOOL bDefValue)
HRESULT WINAPI SHReadDataBlockList(IStream *lpStream, LPDBLIST *lppList)
Definition: clist.c:235
HRESULT WINAPI SHLoadRegUIStringW(HKEY hkey, LPCWSTR value, LPWSTR buf, DWORD size)
Definition: ordinal.c:4413
LONG WINAPI SHGlobalCounterGetValue(HANDLE hGlobalCounter)
Definition: thread.c:432
DWORD WINAPI SHSendMessageBroadcastW(UINT uMsg, WPARAM wParam, LPARAM lParam)
Definition: ordinal.c:4195
HRESULT WINAPI IUnknown_GetClassID(IUnknown *lpUnknown, CLSID *lpClassId)
Definition: ordinal.c:1457
VOID WINAPI SHSetDefaultDialogFont(HWND hWnd, INT id)
Definition: ordinal.c:2576
HRESULT WINAPI IUnknown_QueryStatus(IUnknown *lpUnknown, REFGUID pguidCmdGroup, ULONG cCmds, OLECMD *prgCmds, OLECMDTEXT *pCmdText)
Definition: ordinal.c:1048
HWND WINAPI SHCreateWorkerWindowA(WNDPROC wndProc, HWND hWndParent, DWORD dwExStyle, DWORD dwStyle, HMENU hMenu, LONG_PTR wnd_extra)
Definition: ordinal.c:2798
HRESULT WINAPI RunIndirectRegCommand(_In_opt_ HWND hWnd, _In_ HKEY hKey, _In_opt_ PCWSTR pszSubKey, _In_ PCWSTR pszVerb)
Definition: utils.cpp:250
STDMETHOD() QueryDword(THIS_ ASSOCQUERY query, PCWSTR key, DWORD *pdwValue) PURE
BOOL WINAPI PathIsValidCharW(WCHAR c, DWORD dwClass)
Definition: path.c:2221
HRESULT WINAPI SHPropertyBag_ReadPOINTS(IPropertyBag *ppb, LPCWSTR pszPropName, POINTS *ppts)
HRESULT WINAPI SHPropertyBag_WriteBOOL(IPropertyBag *ppb, LPCWSTR pszPropName, BOOL bValue)
VOID WINAPI SHFreeDataBlockList(LPDBLIST lpList)
Definition: clist.c:331
DWORD ASSOCQUERY
Definition: shlwapi_undoc.h:23
HANDLE WINAPI SHGlobalCounterCreate(REFGUID guid)
Definition: thread.c:551
INT WINAPI SHUnicodeToAnsi(LPCWSTR lpSrcStr, LPSTR lpDstStr, INT iLen)
Definition: string.c:2797
HRESULT WINAPI SHInvokeDefaultCommand(HWND, IShellFolder *, LPCITEMIDLIST)
Definition: ordinal.c:3183
DECLSPEC_IMPORT BOOL WINAPI PathFileExistsAndAttributesA(LPCSTR lpszPath, DWORD *dwAttr)
Definition: path.c:1812
struct tagPOLICYDATA * LPPOLICYDATA
@ SHKEY_Subkey_Handlers
@ SHKEY_Root_HKLM
@ SHKEY_Key_ShellNoRoam
@ SHKEY_Subkey_Volatile
@ SHKEY_Subkey_Associations
@ SHKEY_Key_Classes
@ SHKEY_Subkey_MUICache
@ SHKEY_Key_Explorer
@ SHKEY_Root_HKCU
@ SHKEY_Subkey_FileExts
@ SHKEY_Key_Shell
@ SHKEY_Subkey_Default
@ SHKEY_Subkey_ResourceName
DWORD WINAPI SHCheckMenuItem(HMENU hMenu, UINT uID, BOOL bCheck)
Definition: ordinal.c:1800
HRESULT WINAPI ConnectToConnectionPoint(IUnknown *lpUnkSink, REFIID riid, BOOL bAdviseOnly, IUnknown *lpUnknown, LPDWORD lpCookie, IConnectionPoint **lppCP)
Definition: ordinal.c:1193
HRESULT WINAPI SHCreatePropertyBagOnRegKey(_In_ HKEY hKey, _In_z_ LPCWSTR pszSubKey, _In_ DWORD dwMode, _In_ REFIID riid, _Out_ void **ppvObj)
Definition: propbag.cpp:575
HRESULT WINAPI SHPropertyBag_ReadPOINTL(IPropertyBag *ppb, LPCWSTR pszPropName, POINTL *pptl)
HRESULT WINAPI SHPropertyBag_WriteGUID(IPropertyBag *ppb, LPCWSTR pszPropName, const GUID *pguid)
BOOL WINAPI IContextMenu_Invoke(_In_ IContextMenu *pContextMenu, _In_ HWND hwnd, _In_ LPCSTR lpVerb, _In_ UINT uFlags)
Definition: utils.cpp:196
LONG WINAPI RegCreateKeyExWrapW(_In_ HKEY hKey, _In_ LPCWSTR lpSubKey, _In_ DWORD Reserved, _In_opt_ LPWSTR lpClass, _In_ DWORD dwOptions, _In_ REGSAM samDesired, _In_opt_ LPSECURITY_ATTRIBUTES lpSecurityAttributes, _Out_ PHKEY phkResult, _Out_opt_ LPDWORD lpdwDisposition)
HRESULT WINAPI SHPropertyBag_WriteSHORT(IPropertyBag *ppb, LPCWSTR pszPropName, SHORT sValue)
LONG WINAPI SHGlobalCounterIncrement(HANDLE hGlobalCounter)
Definition: thread.c:453
DWORD WINAPI SHWaitForSendMessageThread(HANDLE hand, DWORD dwTimeout)
Definition: ordinal.c:2050
DWORD WINAPI SHFillRectClr(HDC hDC, LPCRECT pRect, COLORREF cRef)
Definition: ordinal.c:2133
BOOL WINAPI SHGetPathFromIDListWrapW(LPCITEMIDLIST pidl, LPWSTR pszPath)
Definition: ordinal.c:3595
UINT WINAPI SHEnableMenuItem(HMENU hMenu, UINT wItemID, BOOL bEnable)
Definition: ordinal.c:1781
BOOL WINAPI SHAddDataBlock(LPDBLIST *lppList, const DATABLOCK_HEADER *lpNewItem)
Definition: clist.c:68
HRESULT WINAPI IUnknown_OnFocusOCS(IUnknown *lpUnknown, BOOL fGotFocus)
Definition: ordinal.c:1931
DWORD WINAPI SHGetObjectCompatFlags(IUnknown *pUnk, const CLSID *clsid)
Definition: ordinal.c:6499
HRESULT WINAPI SHPropertyBag_ReadStr(IPropertyBag *ppb, LPCWSTR pszPropName, LPWSTR pszDst, int cchMax)
HRESULT WINAPI SHWriteDataBlockList(IStream *lpStream, LPDBLIST lpList)
Definition: clist.c:179
DWORD WINAPI SHRestrictionLookup(_In_ DWORD policy, _In_ LPCWSTR key, _In_ const POLICYDATA *polTable, _Inout_ LPDWORD polArr)
DWORD WINAPI SHGetIniStringW(_In_z_ LPCWSTR appName, _In_z_ LPCWSTR keyName, _Out_writes_to_(outLen, return+1) LPWSTR out, _In_ DWORD outLen, _In_z_ LPCWSTR filename)
Definition: propbag.cpp:602
HRESULT WINAPI SHRunIndirectRegClientCommand(_In_ HWND hWnd, _In_ PCWSTR pszClientType)
HRESULT WINAPI SHIsExpandableFolder(LPSHELLFOLDER lpFolder, LPCITEMIDLIST pidl)
Definition: ordinal.c:2088
struct tagPOLICYDATA POLICYDATA
EXTERN_C BOOL WINAPI SHBoolSystemParametersInfo(UINT uiAction, PVOID pvParam)
HRESULT WINAPI SHPropertyBag_ReadBSTR(IPropertyBag *ppb, LPCWSTR pszPropName, BSTR *pbstr)
BOOL WINAPI SHIsChildOrSelf(HWND hParent, HWND hChild)
Definition: ordinal.c:2373
HRESULT WINAPI MayExecForward(_In_ IUnknown *lpUnknown, _In_ INT nUnknown, _In_opt_ REFGUID pguidCmdGroup, _In_ DWORD nCmdID, _In_ DWORD nCmdexecopt, _In_ VARIANT *pvaIn, _Inout_ VARIANT *pvaOut)
HRESULT WINAPI IUnknown_Exec(IUnknown *lpUnknown, REFGUID pguidCmdGroup, DWORD nCmdID, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
Definition: ordinal.c:1087
BOOL WINAPI SHSetIniStringUTF7W(_In_z_ LPCWSTR lpAppName, _In_z_ LPCWSTR lpKeyName, _In_opt_z_ LPCWSTR lpString, _In_z_ LPCWSTR lpFileName)
Definition: propbag.cpp:748
DWORD WINAPI SHGetCurColorRes(void)
Definition: ordinal.c:2023
DWORD WINAPI SHExpandEnvironmentStringsW(LPCWSTR, LPWSTR, DWORD)
PVOID WINAPI SHInterlockedCompareExchange(PVOID *dest, PVOID xchg, PVOID compare)
Definition: ordinal.c:3624
HRESULT WINAPI IUnknown_TranslateAcceleratorIO(IUnknown *punk, MSG *pmsg)
HRESULT WINAPI MayQSForward(_In_ IUnknown *lpUnknown, _In_ INT nUnknown, _In_opt_ REFGUID riidCmdGrp, _In_ ULONG cCmds, _Inout_ OLECMD *prgCmds, _Inout_ OLECMDTEXT *pCmdText)
BOOL WINAPI SHIsSameObject(IUnknown *lpInt1, IUnknown *lpInt2)
Definition: ordinal.c:1289
DWORD WINAPI SHExpandEnvironmentStringsA(LPCSTR, LPSTR, DWORD)
HRESULT WINAPI IsQSForward(_In_opt_ REFGUID pguidCmdGroup, _In_ ULONG cCmds, _In_ OLECMD *prgCmds)
HWND WINAPI SHCreateWorkerWindowW(WNDPROC wndProc, HWND hWndParent, DWORD dwExStyle, DWORD dwStyle, HMENU hMenu, LONG_PTR wnd_extra)
Definition: ordinal.c:3127
HRESULT WINAPI IUnknown_SetOwner(IUnknown *iface, IUnknown *pUnk)
Definition: ordinal.c:1385
HRESULT WINAPI SHPropertyBag_ReadRECTL(IPropertyBag *ppb, LPCWSTR pszPropName, RECTL *prcl)
HRESULT WINAPI SHForwardContextMenuMsg(IUnknown *pUnk, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT *pResult, BOOL useIContextMenu2)
Definition: rosordinal.c:11
HRESULT WINAPI SHCreatePropertyBagOnProfileSection(_In_z_ LPCWSTR lpFileName, _In_opt_z_ LPCWSTR pszSection, _In_ DWORD dwMode, _In_ REFIID riid, _Out_ void **ppvObj)
Definition: propbag.cpp:965
HRESULT WINAPI SHPropertyBag_Delete(IPropertyBag *ppb, LPCWSTR pszPropName)
LONG WINAPI SHSetWindowBits(HWND hwnd, INT offset, UINT wMask, UINT wFlags)
Definition: ordinal.c:1130
STDMETHOD() QueryString(THIS_ ASSOCQUERY query, PCWSTR key, PWSTR *ppszValue) PURE
HRESULT WINAPI SHCreatePropertyBagOnMemory(_In_ DWORD dwMode, _In_ REFIID riid, _Out_ void **ppvObj)
Definition: propbag.cpp:254
HRESULT WINAPI IUnknown_HasFocusIO(IUnknown *punk)
Definition: ordinal.c:4468
BOOL WINAPI SHIsEmptyStream(IStream *)
Definition: istream.c:567
DWORD WINAPI SHGetAppCompatFlags(_In_ DWORD dwMask)
Definition: appcompat.c:433
DWORD WINAPI SHRemoveAllSubMenus(HMENU hMenu)
Definition: ordinal.c:1752
HMODULE WINAPI SHPinDllOfCLSID(REFIID refiid)
Definition: ordinal.c:2656
HRESULT WINAPI IUnknown_OnFocusChangeIS(LPUNKNOWN lpUnknown, LPUNKNOWN pFocusObject, BOOL bFocus)
Definition: ordinal.c:4988
BOOL WINAPI SHRemoveDataBlock(LPDBLIST *lppList, DWORD dwSignature)
Definition: clist.c:355
HRESULT WINAPI SHPropertyBag_WriteInt(IPropertyBag *ppb, LPCWSTR pszPropName, INT nValue)
PVOID WINAPI SHLockSharedEx(HANDLE hData, DWORD dwProcessId, BOOL bWriteAccess)
BOOL WINAPI PathFindOnPathExW(LPWSTR lpszFile, LPCWSTR *lppszOtherDirs, DWORD dwWhich)
Definition: path.c:1357
void WINAPI SHPropagateMessage(HWND hWnd, UINT uiMsgId, WPARAM wParam, LPARAM lParam, BOOL bSend)
Definition: ordinal.c:1719
HRESULT WINAPI SHPropertyBag_ReadStream(IPropertyBag *ppb, LPCWSTR pszPropName, IStream **ppStream)
BOOL WINAPI SHSetIniStringW(_In_z_ LPCWSTR appName, _In_z_ LPCWSTR keyName, _In_opt_z_ LPCWSTR str, _In_z_ LPCWSTR filename)
Definition: propbag.cpp:658
DWORD WINAPI SHGetValueGoodBootW(HKEY hkey, LPCWSTR pSubKey, LPCWSTR pValue, LPDWORD pwType, LPVOID pvData, LPDWORD pbData)
Definition: reg.c:1890
BOOL WINAPI SHLoadMenuPopup(HINSTANCE hInst, LPCWSTR szName)
Definition: ordinal.c:1666
DECLSPEC_IMPORT BOOL WINAPI PathFileExistsAndAttributesW(LPCWSTR lpszPath, DWORD *dwAttr)
Definition: path.c:1838
HRESULT WINAPI SHPropertyBag_ReadBOOL(IPropertyBag *ppb, LPCWSTR pszPropName, BOOL *pbValue)
HKEY WINAPI SHGetShellKey(DWORD flags, LPCWSTR sub_key, BOOL create)
Definition: ordinal.c:4806
DWORD WINAPI SHAnsiToUnicodeCP(DWORD dwCp, LPCSTR lpSrcStr, LPWSTR lpDstStr, int iLen)
Definition: string.c:2648
int WINAPI SHSearchMapInt(const int *lpKeys, const int *lpValues, int iLen, int iKey)
Definition: ordinal.c:2161
HRESULT WINAPI SHLoadRegUIStringA(HKEY hkey, LPCSTR value, LPSTR buf, DWORD size)
HWND WINAPI SHSetParentHwnd(HWND hWnd, HWND hWndParent)
Definition: ordinal.c:1158
DWORD WINAPI SHGetIniStringUTF7W(_In_opt_z_ LPCWSTR lpAppName, _In_z_ LPCWSTR lpKeyName, _Out_writes_to_(nSize, return+1) _Post_z_ LPWSTR lpReturnedString, _In_ DWORD nSize, _In_z_ LPCWSTR lpFileName)
Definition: propbag.cpp:722
HRESULT WINAPI SHPropertyBag_WriteStr(IPropertyBag *ppb, LPCWSTR pszPropName, LPCWSTR pszValue)
HRESULT WINAPI SHPropertyBag_WriteStream(IPropertyBag *ppb, LPCWSTR pszPropName, IStream *pStream)
BOOL WINAPI PathFileExistsDefExtW(LPWSTR lpszPath, DWORD dwWhich)
Definition: path.c:1123
HRESULT WINAPI SHPropertyBag_WritePOINTL(IPropertyBag *ppb, LPCWSTR pszPropName, const POINTL *pptl)
DWORD WINAPI SHMenuIndexFromID(HMENU hMenu, UINT uID)
Definition: ordinal.c:4725
BOOL WINAPI SHAboutInfoW(LPWSTR lpszDest, DWORD dwDestLen)
Definition: ordinal.c:934
DWORD WINAPI SHUnicodeToAnsiCP(UINT CodePage, LPCWSTR lpSrcStr, LPSTR lpDstStr, int dstlen)
Definition: string.c:2698
HRESULT WINAPI SHPropertyBag_WritePOINTS(IPropertyBag *ppb, LPCWSTR pszPropName, const POINTS *ppts)
INT WINAPI SHGetPerScreenResName(_Out_writes_(cchBuffer) LPWSTR pszBuffer, _In_ INT cchBuffer, _In_ DWORD dwReserved)
Definition: propbag.cpp:1938
HRESULT WINAPI SHPropertyBag_WriteLONG(IPropertyBag *ppb, LPCWSTR pszPropName, LONG lValue)
EXTERN_C HRESULT WINAPI IUnknown_QueryServicePropertyBag(_In_ IUnknown *punk, _In_ long flags, _In_ REFIID riid, _Outptr_ void **ppvObj)
Definition: propbag.cpp:1967
STDMETHOD() QueryObject(THIS_ ASSOCQUERY query, PCWSTR key, REFIID riid, PVOID *ppvObj) PURE
HRESULT WINAPI RunRegCommand(_In_opt_ HWND hWnd, _In_ HKEY hKey, _In_opt_ PCWSTR pszSubKey)
Definition: utils.cpp:236
HRESULT WINAPI SHPropertyBag_ReadType(IPropertyBag *ppb, LPCWSTR pszPropName, VARIANTARG *pvarg, VARTYPE vt)
HRESULT WINAPI SHPropertyBag_WriteDWORD(IPropertyBag *ppb, LPCWSTR pszPropName, DWORD dwValue)
BOOL WINAPI PathFileExistsDefExtAndAttributesW(_Inout_ LPWSTR pszPath, _In_ DWORD dwWhich, _Out_opt_ LPDWORD pdwFileAttributes)
Definition: utils.cpp:300
int WINAPIV ShellMessageBoxWrapW(_In_opt_ HINSTANCE hAppInst, _In_opt_ HWND hWnd, _In_ LPCWSTR lpcText, _In_opt_ LPCWSTR lpcTitle, _In_ UINT fuStyle,...)
BOOL WINAPI PathIsValidCharA(char c, DWORD dwClass)
Definition: path.c:2213
DWORD WINAPI SHRegisterClassA(WNDCLASSA *wndclass)
Definition: ordinal.c:1817
BOOL WINAPI SHAboutInfoA(LPSTR lpszDest, DWORD dwDestLen)
Definition: ordinal.c:915
HRESULT WINAPI SHPropertyBag_ReadLONG(IPropertyBag *ppb, LPCWSTR pszPropName, LPLONG pValue)
Definition: ordinal.c:5806
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
Definition: shtypes.idl:42
DWORD dwOptions
Definition: solitaire.cpp:25
Definition: scsiwmi.h:51
Definition: bug.cpp:8
Definition: copy.c:22
DWORD policy
Definition: ordinal.c:2836
LPCWSTR keystr
Definition: ordinal.c:2838
LPCWSTR appstr
Definition: ordinal.c:2837
Definition: windef.h:99
TW_UINT32 TW_UINT16 TW_UINT16 MSG
Definition: twain.h:1829
uint16_t * PWSTR
Definition: typedefs.h:56
const uint16_t * PCWSTR
Definition: typedefs.h:57
int32_t * LPLONG
Definition: typedefs.h:58
uint32_t * LPDWORD
Definition: typedefs.h:59
int32_t INT
Definition: typedefs.h:58
uint32_t ULONG
Definition: typedefs.h:59
Definition: pdh_main.c:96
wchar_t tm const _CrtWcstime_Writes_and_advances_ptr_ count wchar_t ** out
Definition: wcsftime.cpp:383
_In_ LPCSTR lpFileName
Definition: winbase.h:2824
*nSize LPSTR _Inout_ LPDWORD nSize
Definition: winbase.h:1834
WINBASEAPI _In_ DWORD _Out_ _In_ WORD wFlags
Definition: wincon_undoc.h:337
_In_ POINTL * pptl
Definition: winddi.h:3741
_In_ ULONG _In_ CLIPOBJ _In_ RECTL * prcl
Definition: winddi.h:3531
_In_ LONG _In_ HWND hwnd
Definition: winddi.h:4023
_In_ BOOL bEnable
Definition: winddi.h:3426
_Reserved_ PVOID Reserved
Definition: winddi.h:3974
DWORD COLORREF
Definition: windef.h:94
#define WINAPI
Definition: msvc.h:6
ACCESS_MASK REGSAM
Definition: winreg.h:76
LRESULT(CALLBACK * WNDPROC)(HWND, UINT, WPARAM, LPARAM)
Definition: winuser.h:3008
const char * LPCSTR
Definition: xmlstorage.h:183
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185
__wchar_t WCHAR
Definition: xmlstorage.h:180
WCHAR * LPWSTR
Definition: xmlstorage.h:184
char * LPSTR
Definition: xmlstorage.h:182