ReactOS 0.4.16-dev-1338-g8aab5a9
shell32_main.h
Go to the documentation of this file.
1/*
2 * internal Shell32 Library definitions
3 *
4 * Copyright 1998 Marcus Meissner
5 * Copyright 1998 Juergen Schmied (jsch) * <juergen.schmied@metronet.de>
6 *
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
11 *
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
16 *
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with this library; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
20 */
21
22#ifndef __WINE_SHELL_MAIN_H
23#define __WINE_SHELL_MAIN_H
24
25#ifdef __cplusplus
26extern "C" {
27#endif
28
29#include "shell32_version.h"
30
31#define ARRAY_SIZE(a) (sizeof(a) / sizeof(*(a)))
32
33/*******************************************
34* global SHELL32.DLL variables
35*/
38extern int (WINAPI* SHELL_StrCmpLogical)(PCWSTR s1, PCWSTR s2);
39
40enum {
41 REST_SH32_ENABLESHELLEXECUTEHOOKS = 0x00060001, // POLID_EnableShellExecuteHooks
42};
44
45/* Iconcache */
46#define INVALID_INDEX -1
50INT SIC_GetIconIndex (LPCWSTR sSourceFile, INT dwSourceIndex, DWORD dwFlags ) DECLSPEC_HIDDEN;
53extern INT ShellIconBPP;
54BOOL WINAPI Shell_GetImageLists(HIMAGELIST * lpBigList, HIMAGELIST * lpSmallList);
55
56/* Classes Root */
57HRESULT HCR_GetProgIdKeyOfExtension(PCWSTR szExtension, PHKEY phKey, BOOL AllowFallback);
58BOOL HCR_MapTypeToValueW(LPCWSTR szExtension, LPWSTR szFileType, LONG len, BOOL bPrependDot) DECLSPEC_HIDDEN;
60BOOL HCR_GetExecuteCommandW( HKEY hkeyClass, LPCWSTR szClass, LPCWSTR szVerb, LPWSTR szDest, DWORD len ) DECLSPEC_HIDDEN;
61BOOL HCR_GetIconW(LPCWSTR szClass, LPWSTR szDest, LPCWSTR szName, DWORD len, int* picon_idx);
63
64#ifdef __REACTOS__
65/* Current User */
66BOOL HCU_GetIconW(LPCWSTR szClass, LPWSTR szDest, LPCWSTR szName, DWORD len, int* picon_idx) DECLSPEC_HIDDEN;
67
68/* Local Machine */
69BOOL HLM_GetIconW(int reg_idx, LPWSTR szDest, DWORD len, int* picon_idx) DECLSPEC_HIDDEN;
70#endif
71
72/* ANSI versions of above functions, supposed to go away as soon as they are not used anymore */
73BOOL HCR_MapTypeToValueA(LPCSTR szExtension, LPSTR szFileType, LONG len, BOOL bPrependDot) DECLSPEC_HIDDEN;
74BOOL HCR_GetIconA(LPCSTR szClass, LPSTR szDest, LPCSTR sName, DWORD len, int* picon_idx);
76
78
79/* File associations */
80#define SHELL32_AssocGetFolderDescription SHELL32_AssocGetFSDirectoryDescription
83
86
87LONG
89 _In_ PCWSTR pszSrc,
90 _Out_writes_opt_(dwBuffSize) PWSTR pszDest,
93
94/****************************************************************************
95 * Class constructors
96 */
97HRESULT IDataObject_Constructor(HWND hwndOwner, LPCITEMIDLIST pMyPidl, PCUITEMID_CHILD_ARRAY apidl, UINT cidl, BOOL bExtendedObject, IDataObject **dataObject);
98HRESULT IEnumFORMATETC_Constructor(UINT cfmt, const FORMATETC afmt[], IEnumFORMATETC **enumerator);
99
101IContextMenu2 * ISvItemCm_Constructor(LPSHELLFOLDER pSFParent, LPCITEMIDLIST pidl, const LPCITEMIDLIST *aPidls, UINT uItemCount);
103IContextMenu2 * ISvStaticItemCm_Constructor(LPSHELLFOLDER pSFParent, LPCITEMIDLIST pidl, LPCITEMIDLIST *apidl, UINT cidl, HKEY hKey);
104IContextMenu2 * ISvBgCm_Constructor(LPSHELLFOLDER pSFParent, BOOL bDesktop);
107
111HRESULT WINAPI CPanel_ExtractIconA(LPITEMIDLIST pidl, LPCSTR pszFile, UINT nIconIndex, HICON *phiconLarge, HICON *phiconSmall, UINT nIconSize) DECLSPEC_HIDDEN;
112HRESULT WINAPI CPanel_ExtractIconW(LPITEMIDLIST pidl, LPCWSTR pszFile, UINT nIconIndex, HICON *phiconLarge, HICON *phiconSmall, UINT nIconSize) DECLSPEC_HIDDEN;
113
114/* initialisation for FORMATETC */
115#define InitFormatEtc(fe, cf, med) \
116 {\
117 (fe).cfFormat=cf;\
118 (fe).dwAspect=DVASPECT_CONTENT;\
119 (fe).ptd=NULL;\
120 (fe).tymed=med;\
121 (fe).lindex=-1;\
122 };
123
124#define KeyStateToDropEffect(kst)\
125 ((((kst)&(MK_CONTROL|MK_SHIFT))==(MK_CONTROL|MK_SHIFT)) ? DROPEFFECT_LINK :\
126 (((kst)&(MK_CONTROL)) ? DROPEFFECT_COPY :\
127 (((kst)&(MK_SHIFT)) ? DROPEFFECT_MOVE :\
128 DROPEFFECT_NONE)))
129
130
135
137 HKEY hKey,
139 CLSID *pClsId);
140
141/* Change Notification */
144
145/* file operation */
146#define ASK_DELETE_FILE 1
147#define ASK_DELETE_FOLDER 2
148#define ASK_DELETE_MULTIPLE_ITEM 3
149#define ASK_CREATE_FOLDER 4
150#define ASK_OVERWRITE_FILE 5
151#define ASK_DELETE_SELECTED 6
152#define ASK_TRASH_FILE 7
153#define ASK_TRASH_FOLDER 8
154#define ASK_TRASH_MULTIPLE_ITEM 9
155#define ASK_CANT_TRASH_ITEM 10
156#define ASK_OVERWRITE_FOLDER 11
157
159BOOL SHELL_ConfirmYesNoW(HWND hWnd, int nKindOfDialog, LPCWSTR szDir);
160
161BOOL WINAPI _InsertMenuItemW (HMENU hmenu, UINT indexMenu, BOOL fByPosition,
162 UINT wID, UINT fType, LPCWSTR dwTypeData, UINT fState);
163
165{
166 /* if high-bit of version is 0, we are emulating NT */
167 return !(GetVersion() & 0x80000000);
168}
169
170#define __SHFreeAndNil(ptr) \
171 {\
172 SHFree(*ptr); \
173 *ptr = NULL; \
174 };
175static __inline void __SHCloneStrA(char **target, const char *source)
176{
177 *target = (char *)SHAlloc(strlen(source) + 1);
179}
180
181static __inline void __SHCloneStrWtoA(char **target, const WCHAR *source)
182{
183 int len = WideCharToMultiByte(CP_ACP, 0, source, -1, NULL, 0, NULL, NULL);
184 *target = (char *)SHAlloc(len);
186}
187
189{
190 *target = (WCHAR *)SHAlloc((lstrlenW(source) + 1) * sizeof(WCHAR) );
192}
193
195{
196 int len = MultiByteToWideChar(CP_ACP, 0, source, -1, NULL, 0);
197 *target = (WCHAR *)SHAlloc(len * sizeof(WCHAR));
199 return *target;
200}
201
202/* handle conversions */
203#define HICON_16(h32) (LOWORD(h32))
204#define HICON_32(h16) ((HICON)(ULONG_PTR)(h16))
205#define HINSTANCE_32(h16) ((HINSTANCE)(ULONG_PTR)(h16))
206#define HINSTANCE_16(h32) (LOWORD(h32))
207
209
213
214/* Default shell folder value registration */
216
217/* Detect Shell Links */
219
222 LPCWSTR pwszTitle, LPFNPSPCALLBACK Callback);
224
227
228/* Property system */
229static inline HRESULT
231{
233 if (pSA)
234 {
235 V_VT(pVar) = VT_ARRAY | vt;
236 V_ARRAY(pVar) = pSA;
237 return S_OK;
238 }
239 return E_OUTOFMEMORY;
240}
241
242static inline HRESULT
244{
246}
247
248static inline HRESULT
250{
252 if (SUCCEEDED(hr))
253 CopyMemory(V_ARRAY(pVar)->pvData, pData, cb);
254 return hr;
255}
256
257static inline void*
259{
260 if (pSA->cDims != 1)
261 return NULL;
262 LONG lob, upb;
263 SafeArrayGetLBound((SAFEARRAY*)pSA, 1, &lob);
264 SafeArrayGetUBound((SAFEARRAY*)pSA, 1, &upb);
265 *pcb = (SIZE_T)(upb - lob) + 1;
266 return pSA->pvData;
267}
268
269static inline HRESULT
271{
272 if (V_VT(pVar) != (VT_ARRAY | VT_UI1))
273 return E_INVALIDARG;
274 SIZE_T cbArr;
275 void *pArrData = SHELL_GetSafeArrayDataPtr(V_ARRAY(pVar), &cbArr);
276 if (!pArrData || cbArr < cb)
277 return E_FAIL;
278 CopyMemory(pData, pArrData, cb);
279 return (cbArr > cb) ? S_FALSE : S_OK;
280}
281
282static inline HRESULT
284{
286 if (SUCCEEDED(hr))
287 {
288 SHDESCRIPTIONID *pDID = (SHDESCRIPTIONID*)V_ARRAY(pVar)->pvData;
289 pDID->dwDescriptionId = Id;
290 pDID->clsid = *pCLSID;
291 }
292 return hr;
293}
294
295#ifdef __cplusplus
296} /* extern "C" */
297#endif
298
299#endif /* __WINE_SHELL_MAIN_H */
DWORD Id
#define shell32_hInstance
#define __inline
Definition: _wctype.cpp:15
ACPI_SIZE strlen(const char *String)
Definition: utclib.c:269
HWND hWnd
Definition: settings.c:17
LPARAM lParam
Definition: combotst.c:139
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
#define E_INVALIDARG
Definition: ddrawi.h:101
#define E_FAIL
Definition: ddrawi.h:102
#define DLGPROC
Definition: maze.c:62
LPWSTR Name
Definition: desk.c:124
#define NULL
Definition: types.h:112
UINT uFlags
Definition: api.c:59
#define CP_ACP
Definition: compat.h:109
#define MAX_PATH
Definition: compat.h:34
unsigned short VARTYPE
Definition: compat.h:2254
#define lstrcpyW
Definition: compat.h:749
#define WideCharToMultiByte
Definition: compat.h:111
#define MultiByteToWideChar
Definition: compat.h:110
@ VT_ARRAY
Definition: compat.h:2341
@ VT_UI1
Definition: compat.h:2311
#define lstrlenW
Definition: compat.h:750
DWORD WINAPI GetVersion(void)
Definition: version.c:1458
static REFPROPVARIANT PROPVAR_CHANGE_FLAGS VARTYPE vt
Definition: suminfo.c:91
HRESULT WINAPI SafeArrayGetUBound(SAFEARRAY *psa, UINT nDim, LONG *plUbound)
Definition: safearray.c:1033
SAFEARRAY *WINAPI SafeArrayCreateVector(VARTYPE vt, LONG lLbound, ULONG cElements)
Definition: safearray.c:677
HRESULT WINAPI SafeArrayGetLBound(SAFEARRAY *psa, UINT nDim, LONG *plLbound)
Definition: safearray.c:1066
const GUID CLSID_UnixDosFolder
const GUID CLSID_UnixFolder
LPVOID WINAPI SHAlloc(SIZE_T len)
Definition: shellole.c:315
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
Definition: typeof.h:31
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
unsigned short WORD
Definition: ntddk_ex.h:93
WCHAR swShell32Name[MAX_PATH]
Definition: folders.cpp:22
FxAutoRegKey hKey
GLenum src
Definition: glext.h:6340
GLenum GLenum dst
Definition: glext.h:6340
GLenum GLsizei len
Definition: glext.h:6722
GLenum target
Definition: glext.h:7315
REFIID riid
Definition: atlbase.h:39
REFIID LPVOID * ppv
Definition: atlbase.h:39
#define S_OK
Definition: intsafe.h:52
#define SUCCEEDED(hr)
Definition: intsafe.h:50
struct S1 s1
static HICON
Definition: imagelist.c:80
static HMODULE MODULEINFO DWORD cb
Definition: module.c:33
static HMODULE huser32
Definition: profile.c:34
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
Definition: ordinal.c:63
static HMENU hmenu
Definition: win.c:66
struct _PSP * HPROPSHEETPAGE
Definition: mstask.idl:90
_Out_ PULONG _Out_ PULONG pIndex
Definition: ndis.h:4565
unsigned int UINT
Definition: ndis.h:50
#define _Out_writes_opt_(s)
Definition: no_sal2.h:226
#define _In_
Definition: no_sal2.h:158
interface IBindCtx * LPBC
Definition: objfwd.h:18
#define V_ARRAY(A)
Definition: oleauto.h:222
#define V_VT(A)
Definition: oleauto.h:211
long LONG
Definition: pedump.c:60
static const WCHAR szName[]
Definition: powrprof.c:45
#define LPFNPSPCALLBACK
Definition: prsht.h:388
#define REFIID
Definition: guiddef.h:118
#define REFCLSID
Definition: guiddef.h:117
strcpy
Definition: string.h:131
short sh
Definition: format.c:272
static HRESULT SHELL_VariantToBuffer(VARIANT *pVar, void *pData, SIZE_T cb)
Definition: shell32_main.h:270
HRESULT SHELL_RegisterShellFolders(void) DECLSPEC_HIDDEN
Definition: shellpath.c:3191
BOOL HCR_MapTypeToValueW(LPCWSTR szExtension, LPWSTR szFileType, LONG len, BOOL bPrependDot) DECLSPEC_HIDDEN
Definition: classes.c:82
INT ShellSmallIconSize
Definition: iconcache.cpp:30
HRESULT SHELL_GetShellExtensionRegCLSID(HKEY hKey, LPCWSTR KeyName, CLSID *pClsId)
Definition: propsheet.cpp:13
HRESULT SHELL32_AssocGetFSDirectoryDescription(PWSTR Buf, UINT cchBuf)
HRESULT WINAPI CShellDispatch_Constructor(REFIID riid, LPVOID *ppvOut)
HRESULT WINAPI CDefViewDual_Constructor(REFIID riid, LPVOID *ppvOut)
void SIC_Destroy(void) DECLSPEC_HIDDEN
Definition: iconcache.cpp:635
HRESULT WINAPI CPanel_ExtractIconA(LPITEMIDLIST pidl, LPCSTR pszFile, UINT nIconIndex, HICON *phiconLarge, HICON *phiconSmall, UINT nIconSize) DECLSPEC_HIDDEN
LPCLASSFACTORY IClassFactory_Constructor(REFCLSID)
BOOL HCR_GetExecuteCommandW(HKEY hkeyClass, LPCWSTR szClass, LPCWSTR szVerb, LPWSTR szDest, DWORD len) DECLSPEC_HIDDEN
Definition: classes.c:220
LPWSTR SH_FormatFileSizeWithBytes(PULARGE_INTEGER lpQwSize, LPWSTR pszBuf, UINT cchBuf)
Definition: filedefext.cpp:304
BOOL HCR_GetDefaultVerbW(HKEY hkeyClass, LPCWSTR szVerb, LPWSTR szDest, DWORD len) DECLSPEC_HIDDEN
Definition: classes.c:152
BOOL SHELL_DeleteDirectoryW(HWND hwnd, LPCWSTR pwszDir, BOOL bShowUI)
static __inline void __SHCloneStrWtoA(char **target, const WCHAR *source)
Definition: shell32_main.h:181
BOOL PidlToSicIndex(IShellFolder *sh, LPCITEMIDLIST pidl, BOOL bBigIcon, UINT uFlags, int *pIndex) DECLSPEC_HIDDEN
Definition: iconcache.cpp:715
HRESULT WINAPI DoUnregisterServer(void)
BOOL SIC_Initialize(void)
Definition: iconcache.cpp:515
BOOL HCR_GetIconW(LPCWSTR szClass, LPWSTR szDest, LPCWSTR szName, DWORD len, int *picon_idx)
Definition: classes.c:314
static HRESULT SHELL_CreateVariantBufferEx(VARIANT *pVar, UINT cb, VARTYPE vt)
Definition: shell32_main.h:230
HRESULT WINAPI DoRegisterServer(void)
@ REST_SH32_ENABLESHELLEXECUTEHOOKS
Definition: shell32_main.h:41
IContextMenu2 * ISvItemCm_Constructor(LPSHELLFOLDER pSFParent, LPCITEMIDLIST pidl, const LPCITEMIDLIST *aPidls, UINT uItemCount)
HRESULT IDataObject_Constructor(HWND hwndOwner, LPCITEMIDLIST pMyPidl, PCUITEMID_CHILD_ARRAY apidl, UINT cidl, BOOL bExtendedObject, IDataObject **dataObject)
DWORD WINAPI ParseFieldA(LPCSTR src, DWORD nField, LPSTR dst, DWORD len) DECLSPEC_HIDDEN
Definition: shellord.c:83
BOOL HCR_GetClassNameA(REFIID riid, LPSTR szDest, DWORD len) DECLSPEC_HIDDEN
Definition: classes.c:497
DWORD SH32_InternalRestricted(DWORD rest)
Definition: shpolicy.c:180
BOOL HCR_GetFolderAttributes(LPCITEMIDLIST pidlFolder, LPDWORD dwAttributes) DECLSPEC_HIDDEN
Definition: classes.c:590
HRESULT WINAPI IShellLink_ConstructFromFile(IShellFolder *psf, LPCITEMIDLIST pidl, REFIID riid, LPVOID *ppv)
HPROPSHEETPAGE SH_CreatePropertySheetPage(WORD wDialogId, DLGPROC pfnDlgProc, LPARAM lParam, LPCWSTR pwszTitle)
Definition: propsheet.cpp:243
static HRESULT SHELL_CreateSHDESCRIPTIONID(VARIANT *pVar, DWORD Id, const CLSID *pCLSID)
Definition: shell32_main.h:283
void FreeChangeNotifications(void) DECLSPEC_HIDDEN
HGLOBAL RenderSHELLIDLIST(LPITEMIDLIST pidlRoot, LPITEMIDLIST *apidl, UINT cidl) DECLSPEC_HIDDEN
Definition: clipboard.c:148
static __inline BOOL SHELL_OsIsUnicode(void)
Definition: shell32_main.h:164
static __inline LPWSTR __SHCloneStrAtoW(WCHAR **target, const char *source)
Definition: shell32_main.h:194
INT SIC_GetIconIndex(LPCWSTR sSourceFile, INT dwSourceIndex, DWORD dwFlags) DECLSPEC_HIDDEN
Definition: iconcache.cpp:474
HRESULT WINAPI IShellLink_ConstructFromPath(WCHAR *path, REFIID riid, LPVOID *ppv)
INT ShellIconBPP
Definition: iconcache.cpp:32
BOOL UNIXFS_is_rooted_at_desktop(void) DECLSPEC_HIDDEN
BOOL SHELL_ConfirmYesNoW(HWND hWnd, int nKindOfDialog, LPCWSTR szDir)
Definition: shlfileop.cpp:375
static HRESULT SHELL_CreateVariantBuffer(VARIANT *pVar, UINT cb)
Definition: shell32_main.h:243
DWORD WINAPI ParseFieldW(LPCWSTR src, DWORD nField, LPWSTR dst, DWORD len) DECLSPEC_HIDDEN
Definition: shellord.c:117
HMODULE huser32 DECLSPEC_HIDDEN
Definition: shell32_main.h:37
BOOL WINAPI Shell_GetImageLists(HIMAGELIST *lpBigList, HIMAGELIST *lpSmallList)
Definition: iconcache.cpp:689
static void * SHELL_GetSafeArrayDataPtr(const SAFEARRAY *pSA, SIZE_T *pcb)
Definition: shell32_main.h:258
IContextMenu2 * ISvStaticItemCm_Constructor(LPSHELLFOLDER pSFParent, LPCITEMIDLIST pidl, LPCITEMIDLIST *apidl, UINT cidl, HKEY hKey)
HRESULT SHELL32_AssocGetFileDescription(PCWSTR Name, PWSTR Buf, UINT cchBuf)
HRESULT WINAPI INewItem_Constructor(IUnknown *pUnkOuter, REFIID riif, LPVOID *ppv)
PCWSTR s2
Definition: shell32_main.h:38
HRESULT WINAPI CPanel_ExtractIconW(LPITEMIDLIST pidl, LPCWSTR pszFile, UINT nIconIndex, HICON *phiconLarge, HICON *phiconSmall, UINT nIconSize) DECLSPEC_HIDDEN
BOOL HCR_GetIconA(LPCSTR szClass, LPSTR szDest, LPCSTR sName, DWORD len, int *picon_idx)
Definition: classes.c:339
HGLOBAL RenderFILENAMEA(LPITEMIDLIST pidlRoot, LPITEMIDLIST *apidl, UINT cidl) DECLSPEC_HIDDEN
Definition: clipboard.c:190
HGLOBAL RenderHDROP(LPITEMIDLIST pidlRoot, LPITEMIDLIST *apidl, UINT cidl) DECLSPEC_HIDDEN
Definition: clipboard.c:56
HRESULT WINAPI IFileSystemBindData_Constructor(const WIN32_FIND_DATAW *pfd, LPBC *ppV)
BOOL HCR_GetClassNameW(REFIID riid, LPWSTR szDest, DWORD len) DECLSPEC_HIDDEN
Definition: classes.c:422
void InitChangeNotifications(void) DECLSPEC_HIDDEN
LONG PathProcessCommandW(_In_ PCWSTR pszSrc, _Out_writes_opt_(dwBuffSize) PWSTR pszDest, _In_ INT cchDest, _In_ DWORD dwFlags)
Definition: shlexec.cpp:3068
BOOL SHELL_IsShortcut(LPCITEMIDLIST) DECLSPEC_HIDDEN
Definition: shell32_main.c:404
HGLOBAL RenderFILENAMEW(LPITEMIDLIST pidlRoot, LPITEMIDLIST *apidl, UINT cidl) DECLSPEC_HIDDEN
Definition: clipboard.c:222
BOOL WINAPI _InsertMenuItemW(HMENU hmenu, UINT indexMenu, BOOL fByPosition, UINT wID, UINT fType, LPCWSTR dwTypeData, UINT fState)
IContextMenu2 * ISvBgCm_Constructor(LPSHELLFOLDER pSFParent, BOOL bDesktop)
static __inline void __SHCloneStrW(WCHAR **target, const WCHAR *source)
Definition: shell32_main.h:188
BOOL HCR_MapTypeToValueA(LPCSTR szExtension, LPSTR szFileType, LONG len, BOOL bPrependDot) DECLSPEC_HIDDEN
Definition: classes.c:116
HRESULT IEnumFORMATETC_Constructor(UINT cfmt, const FORMATETC afmt[], IEnumFORMATETC **enumerator)
HPROPSHEETPAGE SH_CreatePropertySheetPageEx(WORD wDialogId, DLGPROC pfnDlgProc, LPARAM lParam, LPCWSTR pwszTitle, LPFNPSPCALLBACK Callback)
Definition: propsheet.cpp:223
INT ShellLargeIconSize
Definition: iconcache.cpp:31
static __inline void __SHCloneStrA(char **target, const char *source)
Definition: shell32_main.h:175
HRESULT HCR_GetProgIdKeyOfExtension(PCWSTR szExtension, PHKEY phKey, BOOL AllowFallback)
Definition: classes.c:55
static HRESULT SHELL_InitVariantFromBuffer(VARIANT *pVar, const void *pData, UINT cb)
Definition: shell32_main.h:249
HRESULT hr
Definition: shlfolder.c:183
ITEMIDLIST UNALIGNED * LPITEMIDLIST
Definition: shtypes.idl:41
const PCUITEMID_CHILD * PCUITEMID_CHILD_ARRAY
Definition: shtypes.idl:71
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
Definition: shtypes.idl:42
static PIXELFORMATDESCRIPTOR pfd
Definition: ssstars.c:67
DWORD dwDescriptionId
Definition: shlobj.h:1488
USHORT cDims
Definition: compat.h:2355
PVOID pvData
Definition: compat.h:2359
TW_UINT32 TW_UINT16 TW_UINT16 TW_MEMREF pData
Definition: twain.h:1830
uint16_t * PWSTR
Definition: typedefs.h:56
const uint16_t * PCWSTR
Definition: typedefs.h:57
ULONG_PTR SIZE_T
Definition: typedefs.h:80
uint32_t * LPDWORD
Definition: typedefs.h:59
int32_t INT
Definition: typedefs.h:58
DWORD dwAttributes
Definition: vdmdbg.h:34
_Must_inspect_result_ _In_ WDFDEVICE _In_ PCUNICODE_STRING KeyName
Definition: wdfdevice.h:2699
_In_ WDFINTERRUPT _In_ PFN_WDF_INTERRUPT_SYNCHRONIZE Callback
Definition: wdfinterrupt.h:458
#define CopyMemory
Definition: winbase.h:1751
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1176
_In_ LONG _In_ HWND hwnd
Definition: winddi.h:4023
_In_ ULONG _In_opt_ PVOID pvData
Definition: winddi.h:3749
LONG_PTR LPARAM
Definition: windef.h:208
#define WINAPI
Definition: msvc.h:6
#define S_FALSE
Definition: winerror.h:2357
_In_ DWORD _In_ int _In_ int cchDest
Definition: winnls.h:1197
const char * LPCSTR
Definition: xmlstorage.h:183
char * LPSTR
Definition: xmlstorage.h:182
__wchar_t WCHAR
Definition: xmlstorage.h:180
WCHAR * LPWSTR
Definition: xmlstorage.h:184
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185