ReactOS 0.4.17-dev-243-g1369312
shlwapi.h
Go to the documentation of this file.
1/*
2 * SHLWAPI.DLL functions
3 *
4 * Copyright (C) 2000 Juergen Schmied
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 */
20
21#ifndef __WINE_SHLWAPI_H
22#define __WINE_SHLWAPI_H
23
24/* FIXME: #include <specstrings.h> */
25#include <objbase.h>
26#include <shtypes.h>
27
28#ifdef __cplusplus
29extern "C" {
30#endif /* defined(__cplusplus) */
31
32#include <pshpack8.h>
33
34#ifndef WINSHLWAPI
35#ifndef _SHLWAPI_
36#define WINSHLWAPI DECLSPEC_IMPORT
37#else
38#define WINSHLWAPI
39#endif
40#endif
41
42#ifdef __REACTOS__
43#if defined(__GNUC__) && !defined(_SHLWAPI_)
44# undef WINSHLWAPI
45# define WINSHLWAPI /* FIXME: HACK: CORE-6504 */
46#endif
47#ifndef __MSABI_LONG
48# define __MSABI_LONG(x) x ## l
49#endif
50#endif // __REACTOS__
51
52#ifndef NO_SHLWAPI_HTTP
53
56#define GetAcceptLanguages WINELIB_NAME_AW(GetAcceptLanguages)
57
58#endif /* NO_SHLWAPI_HTTP */
59
60#ifndef NO_SHLWAPI_REG
61
62/* Registry functions */
63
66#define SHDeleteEmptyKey WINELIB_NAME_AW(SHDeleteEmptyKey)
67
70#define SHDeleteKey WINELIB_NAME_AW(SHDeleteKey)
71
74#define SHDeleteValue WINELIB_NAME_AW(SHDeleteValue)
75
78#define SHGetValue WINELIB_NAME_AW(SHGetValue)
79
82#define SHSetValue WINELIB_NAME_AW(SHSetValue)
83
86#define SHQueryValueEx WINELIB_NAME_AW(SHQueryValueEx)
87
90#define SHEnumKeyEx WINELIB_NAME_AW(SHEnumKeyEx)
91
94#define SHEnumValue WINELIB_NAME_AW(SHEnumValue)
95
98#define SHQueryInfoKey WINELIB_NAME_AW(SHQueryInfoKey)
99
102#define SHRegGetPath WINELIB_NAME_AW(SHRegGetPath)
103
106#define SHRegSetPath WINELIB_NAME_AW(SHRegSetPath)
107
110#define SHCopyKey WINELIB_NAME_AW(SHCopyKey)
111
113
114/* SHRegGetValue flags */
115typedef INT SRRF;
116
117#define SRRF_RT_REG_NONE 0x1
118#define SRRF_RT_REG_SZ 0x2
119#define SRRF_RT_REG_EXPAND_SZ 0x4
120#define SRRF_RT_REG_BINARY 0x8
121#define SRRF_RT_REG_DWORD 0x10
122#define SRRF_RT_REG_MULTI_SZ 0x20
123#define SRRF_RT_REG_QWORD 0x40
124
125#define SRRF_RT_DWORD (SRRF_RT_REG_BINARY|SRRF_RT_REG_DWORD)
126#define SRRF_RT_QWORD (SRRF_RT_REG_BINARY|SRRF_RT_REG_QWORD)
127#define SRRF_RT_ANY 0xffff
128
129#define SRRF_RM_ANY 0
130#define SRRF_RM_NORMAL 0x10000
131#define SRRF_RM_SAFE 0x20000
132#define SRRF_RM_SAFENETWORK 0x40000
133
134#define SRRF_NOEXPAND 0x10000000
135#define SRRF_ZEROONFAILURE 0x20000000
136#define SRRF_NOVIRT 0x40000000
137
140#define SHRegGetValue WINELIB_NAME_AW(SHRegGetValue)
141
142/* Undocumented registry functions */
143
146#define SHDeleteOrphanKey WINELIB_NAME_AW(SHDeleteOrphanKey)
147
148
149/* User registry functions */
150
151typedef enum
152{
158
159typedef enum
160{
166
167#define SHREGSET_HKCU 0x1 /* Apply to HKCU if empty */
168#define SHREGSET_FORCE_HKCU 0x2 /* Always apply to HKCU */
169#define SHREGSET_HKLM 0x4 /* Apply to HKLM if empty */
170#define SHREGSET_FORCE_HKLM 0x8 /* Always apply to HKLM */
171#define SHREGSET_DEFAULT (SHREGSET_FORCE_HKCU | SHREGSET_HKLM)
172
175
178#define SHRegCreateUSKey WINELIB_NAME_AW(SHRegCreateUSKey)
179
182#define SHRegOpenUSKey WINELIB_NAME_AW(SHRegOpenUSKey)
183
188#define SHRegQueryUSValue WINELIB_NAME_AW(SHRegQueryUSValue)
189
192#define SHRegWriteUSValue WINELIB_NAME_AW(SHRegWriteUSValue)
193
196#define SHRegDeleteUSValue WINELIB_NAME_AW(SHRegDeleteUSValue)
197
200#define SHRegDeleteEmptyUSKey WINELIB_NAME_AW(SHRegDeleteEmptyUSKey)
201
204#define SHRegEnumUSKey WINELIB_NAME_AW(SHRegEnumUSKey)
205
210#define SHRegEnumUSValue WINELIB_NAME_AW(SHRegEnumUSValue)
211
216#define SHRegQueryInfoUSKey WINELIB_NAME_AW(SHRegQueryInfoUSKey)
217
219
224#define SHRegGetUSValue WINELIB_NAME_AW(SHRegGetUSValue)
225
228#define SHRegSetUSValue WINELIB_NAME_AW(SHRegSetUSValue)
229
232#define SHRegGetBoolUSValue WINELIB_NAME_AW(SHRegGetBoolUSValue)
233
235
236/* IQueryAssociation and helpers */
237enum
238{
239 ASSOCF_NONE = 0x0000,
240 ASSOCF_INIT_NOREMAPCLSID = 0x0001, /* Don't map clsid->progid */
241 ASSOCF_INIT_BYEXENAME = 0x0002, /* .exe name given */
242 ASSOCF_OPEN_BYEXENAME = 0x0002, /* Synonym */
243 ASSOCF_INIT_DEFAULTTOSTAR = 0x0004, /* Use * as base */
244 ASSOCF_INIT_DEFAULTTOFOLDER = 0x0008, /* Use folder as base */
245 ASSOCF_NOUSERSETTINGS = 0x0010, /* No HKCU reads */
246 ASSOCF_NOTRUNCATE = 0x0020, /* Don't truncate return */
247 ASSOCF_VERIFY = 0x0040, /* Verify data */
248 ASSOCF_REMAPRUNDLL = 0x0080, /* Get rundll args */
249 ASSOCF_NOFIXUPS = 0x0100, /* Don't fixup errors */
250 ASSOCF_IGNOREBASECLASS = 0x0200, /* Don't read baseclass */
251 ASSOCF_INIT_IGNOREUNKNOWN = 0x0400, /* Fail for unknown progid */
252 ASSOCF_INIT_FIXED_PROGID = 0x0800, /* Used passed string as progid, don't try to map it */
253 ASSOCF_IS_PROTOCOL = 0x1000, /* Treat as protocol, that should be mapped */
254 ASSOCF_INIT_FOR_FILE = 0x2000, /* progid is for file extension association */
255};
256
257typedef DWORD ASSOCF;
258
259typedef enum
260{
261 ASSOCSTR_COMMAND = 1, /* Verb command */
262 ASSOCSTR_EXECUTABLE, /* .exe from command string */
263 ASSOCSTR_FRIENDLYDOCNAME, /* Friendly doc type name */
264 ASSOCSTR_FRIENDLYAPPNAME, /* Friendly .exe name */
265 ASSOCSTR_NOOPEN, /* noopen value */
266 ASSOCSTR_SHELLNEWVALUE, /* Use shellnew key */
267 ASSOCSTR_DDECOMMAND, /* DDE command template */
268 ASSOCSTR_DDEIFEXEC, /* DDE command for process create */
269 ASSOCSTR_DDEAPPLICATION, /* DDE app name */
270 ASSOCSTR_DDETOPIC, /* DDE topic */
271 ASSOCSTR_INFOTIP, /* Infotip */
272 ASSOCSTR_QUICKTIP, /* Quick infotip */
273 ASSOCSTR_TILEINFO, /* Properties for tileview */
274 ASSOCSTR_CONTENTTYPE, /* Mimetype */
276 ASSOCSTR_SHELLEXTENSION, /* GUID for shell extension handler */
279
280typedef enum
281{
282 ASSOCKEY_SHELLEXECCLASS = 1, /* Key for ShellExec */
283 ASSOCKEY_APP, /* Application */
284 ASSOCKEY_CLASS, /* Progid or class */
285 ASSOCKEY_BASECLASS, /* Base class */
288
289typedef enum
290{
291 ASSOCDATA_MSIDESCRIPTOR = 1, /* Component descriptor */
292 ASSOCDATA_NOACTIVATEHANDLER, /* Don't activate */
293 ASSOCDATA_QUERYCLASSSTORE, /* Look in Class Store */
294 ASSOCDATA_HASPERUSERASSOC, /* Use user association */
295 ASSOCDATA_EDITFLAGS, /* Edit flags */
296 ASSOCDATA_VALUE, /* pszExtra is value */
299
300typedef enum
301{
304
305typedef struct IQueryAssociations *LPQUERYASSOCIATIONS;
306
307#define INTERFACE IQueryAssociations
308DECLARE_INTERFACE_(IQueryAssociations,IUnknown)
309{
310 /*** IUnknown methods ***/
314 /*** IQueryAssociations methods ***/
315 STDMETHOD(Init)(THIS_ ASSOCF flags, LPCWSTR pszAssoc, HKEY hkProgid, HWND hwnd) PURE;
316 STDMETHOD(GetString)(THIS_ ASSOCF flags, ASSOCSTR str, LPCWSTR pszExtra, LPWSTR pszOut, DWORD * pcchOut) PURE;
317 STDMETHOD(GetKey)(THIS_ ASSOCF flags, ASSOCKEY key, LPCWSTR pszExtra, HKEY * phkeyOut) PURE;
318 STDMETHOD(GetData)(THIS_ ASSOCF flags, ASSOCDATA data, LPCWSTR pszExtra, LPVOID pvOut, DWORD * pcbOut) PURE;
319 STDMETHOD(GetEnum)(THIS_ ASSOCF flags, ASSOCENUM assocenum, LPCWSTR pszExtra, REFIID riid, LPVOID * ppvOut) PURE;
320};
321#undef INTERFACE
322
323#if !defined(__cplusplus) || defined(CINTERFACE)
324#define IQueryAssociations_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
325#define IQueryAssociations_AddRef(p) (p)->lpVtbl->AddRef(p)
326#define IQueryAssociations_Release(p) (p)->lpVtbl->Release(p)
327#define IQueryAssociations_Init(p,a,b,c,d) (p)->lpVtbl->Init(p,a,b,c,d)
328#define IQueryAssociations_GetString(p,a,b,c,d,e) (p)->lpVtbl->GetString(p,a,b,c,d,e)
329#define IQueryAssociations_GetKey(p,a,b,c,d) (p)->lpVtbl->GetKey(p,a,b,c,d)
330#define IQueryAssociations_GetData(p,a,b,c,d,e) (p)->lpVtbl->GetData(p,a,b,c,d,e)
331#define IQueryAssociations_GetEnum(p,a,b,c,d,e) (p)->lpVtbl->GetEnum(p,a,b,c,d,e)
332#endif
333
335
338#define AssocQueryString WINELIB_NAME_AW(AssocQueryString)
339
342#define AssocQueryStringByKey WINELIB_NAME_AW(AssocQueryStringByKey)
343
346#define AssocQueryKey WINELIB_NAME_AW(AssocQueryKey)
347
349
350#endif /* NO_SHLWAPI_REG */
351
358
359/* Path functions */
360#ifndef NO_SHLWAPI_PATH
361
362/* GetPathCharType return flags */
363#define GCT_INVALID 0x0
364#define GCT_LFNCHAR 0x1
365#define GCT_SHORTCHAR 0x2
366#define GCT_WILD 0x4
367#define GCT_SEPARATOR 0x8
368
371#define PathAddBackslash WINELIB_NAME_AW(PathAddBackslash)
372
375#define PathAddExtension WINELIB_NAME_AW(PathAddExtension)
376
379#define PathAppend WINELIB_NAME_AW(PathAppend)
380
383#define PathBuildRoot WINELIB_NAME_AW(PathBuiltRoot)
384
387#define PathCanonicalize WINELIB_NAME_AW(PathCanonicalize)
388
391#define PathCombine WINELIB_NAME_AW(PathCombine)
392
395#define PathCompactPath WINELIB_NAME_AW(PathCompactPath)
396
399#define PathCompactPathEx WINELIB_NAME_AW(PathCompactPathEx)
400
403#define PathCommonPrefix WINELIB_NAME_AW(PathCommonPrefix)
404
407#define PathCreateFromUrl WINELIB_NAME_AW(PathCreateFromUrl)
408
410
413#define PathFileExists WINELIB_NAME_AW(PathFileExists)
414
417#define PathFileExistsAndAttributes WINELIB_NAME_AW(PathFileExistsAndAttributes)
418
421#define PathFindExtension WINELIB_NAME_AW(PathFindExtension)
422
425#define PathFindFileName WINELIB_NAME_AW(PathFindFileName)
426
429#define PathFindNextComponent WINELIB_NAME_AW(PathFindNextComponent)
430
433#define PathFindOnPath WINELIB_NAME_AW(PathFindOnPath)
434
437#define PathGetArgs WINELIB_NAME_AW(PathGetArgs)
438
441#define PathGetCharType WINELIB_NAME_AW(PathGetCharType)
442
445#define PathGetDriveNumber WINELIB_NAME_AW(PathGetDriveNumber)
446
449#define PathIsDirectory WINELIB_NAME_AW(PathIsDirectory)
450
453#define PathIsDirectoryEmpty WINELIB_NAME_AW(PathIsDirectoryEmpty)
454
457#define PathIsFileSpec WINELIB_NAME_AW(PathIsFileSpec)
458
461#define PathIsPrefix WINELIB_NAME_AW(PathIsPrefix)
462
465#define PathIsRelative WINELIB_NAME_AW(PathIsRelative)
466
469#define PathIsRoot WINELIB_NAME_AW(PathIsRoot)
470
473#define PathIsSameRoot WINELIB_NAME_AW(PathIsSameRoot)
474
477#define PathIsUNC WINELIB_NAME_AW(PathIsUNC)
478
481#define PathIsUNCServer WINELIB_NAME_AW(PathIsUNCServer)
482
485#define PathIsUNCServerShare WINELIB_NAME_AW(PathIsUNCServerShare)
486
489#define PathIsContentType WINELIB_NAME_AW(PathIsContentType)
490
493#define PathIsURL WINELIB_NAME_AW(PathIsURL)
494
497#define PathMakePretty WINELIB_NAME_AW(PathMakePretty)
498
501#define PathMatchSpec WINELIB_NAME_AW(PathMatchSpec)
502
503#define PMSF_NORMAL 0x00000000
504#define PMSF_MULTIPLE 0x00000001
505#define PMSF_DONT_STRIP_SPACES 0x00010000
506
509#define PathMatchSpecEx WINELIB_NAME_AW(PathMatchSpecEx)
510
513#define PathParseIconLocation WINELIB_NAME_AW(PathParseIconLocation)
514
517#define PathQuoteSpaces WINELIB_NAME_AW(PathQuoteSpaces)
518
521#define PathRelativePathTo WINELIB_NAME_AW(PathRelativePathTo)
522
525#define PathRemoveArgs WINELIB_NAME_AW(PathRemoveArgs)
526
529#define PathRemoveBackslash WINELIB_NAME_AW(PathRemoveBackslash)
530
533#define PathRemoveBlanks WINELIB_NAME_AW(PathRemoveBlanks)
534
537#define PathRemoveExtension WINELIB_NAME_AW(PathRemoveExtension)
538
541#define PathRemoveFileSpec WINELIB_NAME_AW(PathRemoveFileSpec)
542
545#define PathRenameExtension WINELIB_NAME_AW(PathRenameExtension)
546
549#define PathSearchAndQualify WINELIB_NAME_AW(PathSearchAndQualify)
550
553#define PathSetDlgItemPath WINELIB_NAME_AW(PathSetDlgItemPath)
554
557#define PathSkipRoot WINELIB_NAME_AW(PathSkipRoot)
558
561#define PathStripPath WINELIB_NAME_AW(PathStripPath)
562
565#define PathStripToRoot WINELIB_NAME_AW(PathStripToRoot)
566
569#define PathUnquoteSpaces WINELIB_NAME_AW(PathUnquoteSpaces)
570
573#define PathMakeSystemFolder WINELIB_NAME_AW(PathMakeSystemFolder)
574
577#define PathUnmakeSystemFolder WINELIB_NAME_AW(PathUnmakeSystemFolder)
578
581#define PathIsSystemFolder WINELIB_NAME_AW(PathIsSystemFolder)
582
585#define PathIsNetworkPath WINELIB_NAME_AW(PathIsNetworkPath)
586
589#define PathIsLFNFileSpec WINELIB_NAME_AW(PathIsLFNFileSpec)
590
593#define PathFindSuffixArray WINELIB_NAME_AW(PathFindSuffixArray)
594
597#define PathUndecorate WINELIB_NAME_AW(PathUndecorate)
598
601#define PathUnExpandEnvStrings WINELIB_NAME_AW(PathUnExpandEnvStrings)
602
603/* Url functions */
604typedef enum {
635
636/* These are used by UrlGetPart routine */
637typedef enum {
646
647#define URL_PARTFLAG_KEEPSCHEME 0x00000001
648
649/* These are used by the UrlIs... routines */
650typedef enum {
659
660/* This is used by the UrlApplyScheme... routines */
661#define URL_APPLY_FORCEAPPLY 0x00000008
662#define URL_APPLY_GUESSFILE 0x00000004
663#define URL_APPLY_GUESSSCHEME 0x00000002
664#define URL_APPLY_DEFAULT 0x00000001
665
666/* The following are used by UrlEscape..., UrlUnEscape...,
667 * UrlCanonicalize..., and UrlCombine... routines
668 */
669#define URL_WININET_COMPATIBILITY 0x80000000
670#define URL_PLUGGABLE_PROTOCOL 0x40000000
671#define URL_ESCAPE_UNSAFE 0x20000000
672#define URL_UNESCAPE 0x10000000
673
674#define URL_DONT_SIMPLIFY 0x08000000
675#define URL_ESCAPE_SPACES_ONLY 0x04000000
676#define URL_DONT_ESCAPE_EXTRA_INFO 0x02000000
677
678#define URL_INTERNAL_PATH 0x00800000
679#define URL_UNESCAPE_HIGH_ANSI_ONLY 0x00400000
680#define URL_CONVERT_IF_DOSPATH 0x00200000
681#define URL_UNESCAPE_INPLACE 0x00100000
682
683#define URL_ESCAPE_ASCII_URI_COMPONENT 0x00080000
684#define URL_ESCAPE_AS_UTF8 0x00040000
685#define URL_DONT_UNESCAPE 0x00020000
686#define URL_FILE_USE_PATHURL 0x00010000
687
688#define URL_ESCAPE_SEGMENT_ONLY 0x00002000
689#define URL_ESCAPE_PERCENT 0x00001000
690
691#define URL_BROWSER_MODE URL_DONT_ESCAPE_EXTRA_INFO
692#define URL_DONT_UNESCAPE_EXTRA_INFO URL_DONT_ESCAPE_EXTRA_INFO
693#define URL_ESCAPE_URI_COMPONENT (URL_ESCAPE_ASCII_URI_COMPONENT | URL_ESCAPE_AS_UTF8)
694#define URL_NO_META URL_DONT_SIMPLIFY
695#define URL_UNESCAPE_AS_UTF8 URL_ESCAPE_AS_UTF8
696#define URL_UNESCAPE_URI_COMPONENT URL_UNESCAPE_AS_UTF8
697
700#define UrlApplyScheme WINELIB_NAME_AW(UrlApplyScheme)
701
704#define UrlCanonicalize WINELIB_NAME_AW(UrlCanonicalize)
705
708#define UrlCombine WINELIB_NAME_AW(UrlCombine)
709
712#define UrlCompare WINELIB_NAME_AW(UrlCompare)
713
716#define UrlEscape WINELIB_NAME_AW(UrlEscape)
717
718#define UrlEscapeSpacesA(x,y,z) UrlCanonicalizeA(x, y, z, \
719 URL_DONT_ESCAPE_EXTRA_INFO|URL_ESCAPE_SPACES_ONLY)
720#define UrlEscapeSpacesW(x,y,z) UrlCanonicalizeW(x, y, z, \
721 URL_DONT_ESCAPE_EXTRA_INFO|URL_ESCAPE_SPACES_ONLY)
722#define UrlEscapeSpaces WINELIB_NAME_AW(UrlEscapeSpaces)
723
726#define UrlGetLocation WINELIB_NAME_AW(UrlGetLocation)
727
730#define UrlGetPart WINELIB_NAME_AW(UrlGetPart)
731
732WINSHLWAPI HRESULT WINAPI HashData(const unsigned char *,DWORD,unsigned char *lpDest,DWORD);
733
736#define UrlHash WINELIB_NAME_AW(UrlHash)
737
740#define UrlIs WINELIB_NAME_AW(UrlIs)
741
744#define UrlIsNoHistory WINELIB_NAME_AW(UrlIsNoHistory)
745
748#define UrlIsOpaque WINELIB_NAME_AW(UrlIsOpaque)
749
750#define UrlIsFileUrlA(x) UrlIsA(x, URLIS_FILEURL)
751#define UrlIsFileUrlW(x) UrlIsW(x, URLIS_FILEURL)
752#define UrlIsFileUrl WINELIB_NAME_AW(UrlIsFileUrl)
753
756#define UrlUnescape WINELIB_NAME_AW(UrlUnescape)
757
758#define UrlUnescapeInPlaceA(x,y) UrlUnescapeA(x, NULL, NULL, \
759 y | URL_UNESCAPE_INPLACE)
760#define UrlUnescapeInPlaceW(x,y) UrlUnescapeW(x, NULL, NULL, \
761 y | URL_UNESCAPE_INPLACE)
762#define UrlUnescapeInPlace WINELIB_NAME_AW(UrlUnescapeInPlace)
763
766#define UrlCreateFromPath WINELIB_NAME_AW(UrlCreateFromPath)
767
768typedef struct tagPARSEDURLA {
776
777typedef struct tagPARSEDURLW {
785
788#define ParseURL WINELIB_NAME_AW(ParseUrl)
789
790#endif /* NO_SHLWAPI_PATH */
791
792
793/* String functions */
794#ifndef NO_SHLWAPI_STRFCNS
795
796/* StrToIntEx flags */
797#define STIF_DEFAULT __MSABI_LONG(0x0)
798#define STIF_SUPPORT_HEX __MSABI_LONG(0x1)
799
802#define ChrCmpI WINELIB_NAME_AW(ChrCmpI)
803
806#define StrCSpn WINELIB_NAME_AW(StrCSpn)
807
810#define StrCSpnI WINELIB_NAME_AW(StrCSpnI)
811
812#define StrCatA lstrcatA
814#define StrCat WINELIB_NAME_AW(StrCat)
815
818#define StrCatBuff WINELIB_NAME_AW(StrCatBuff)
819
821
824#define StrChr WINELIB_NAME_AW(StrChr)
825
828#define StrChrI WINELIB_NAME_AW(StrChrI)
829
830#define StrCmpA lstrcmpA
832#define StrCmp WINELIB_NAME_AW(StrCmp)
833
834#define StrCmpIA lstrcmpiA
836#define StrCmpI WINELIB_NAME_AW(StrCmpI)
837
838#define StrCpyA lstrcpyA
840#define StrCpy WINELIB_NAME_AW(StrCpy)
841
842#define StrCpyNA lstrcpynA
844#define StrCpyN WINELIB_NAME_AW(StrCpyN)
845#define StrNCpy WINELIB_NAME_AW(StrCpyN)
846
848
851#define StrCmpN WINELIB_NAME_AW(StrCmpN)
852#define StrNCmp WINELIB_NAME_AW(StrCmpN)
853
856#define StrCmpNI WINELIB_NAME_AW(StrCmpNI)
857#define StrNCmpI WINELIB_NAME_AW(StrCmpNI)
858
861#define StrDup WINELIB_NAME_AW(StrDup)
862
865#define SHStrDup WINELIB_NAME_AW(SHStrDup)
866
868
869typedef enum {
872} SFBS_FLAGS;
873
875
876/* A/W Pairing is broken for this function */
879#ifndef WINE_NO_UNICODE_MACROS
880#ifdef UNICODE
881#define StrFormatByteSize StrFormatByteSizeW
882#else
883#define StrFormatByteSize StrFormatByteSize64A
884#endif
885#endif
886
889#define StrFormatKBSize WINELIB_NAME_AW(StrFormatKBSize)
890
893#define StrFromTimeInterval WINELIB_NAME_AW(StrFromTimeInterval)
894
897#define StrIsIntlEqual WINELIB_NAME_AW(StrIsIntlEqual)
898
899#define StrIntlEqNA(a,b,c) StrIsIntlEqualA(TRUE,a,b,c)
900#define StrIntlEqNW(a,b,c) StrIsIntlEqualW(TRUE,a,b,c)
901
902#define StrIntlEqNIA(a,b,c) StrIsIntlEqualA(FALSE,a,b,c)
903#define StrIntlEqNIW(a,b,c) StrIsIntlEqualW(FALSE,a,b,c)
904
907#define StrNCat WINELIB_NAME_AW(StrNCat)
908#define StrCatN WINELIB_NAME_AW(StrNCat)
909
912#define StrPBrk WINELIB_NAME_AW(StrPBrk)
913
916#define StrRChr WINELIB_NAME_AW(StrRChr)
917
920#define StrRChrI WINELIB_NAME_AW(StrRChrI)
921
924#define StrRStrI WINELIB_NAME_AW(StrRStrI)
925
928#define StrSpn WINELIB_NAME_AW(StrSpn)
929
932#define StrStr WINELIB_NAME_AW(StrStr)
933
936#define StrStrI WINELIB_NAME_AW(StrStrI)
937
940
943#define StrToInt WINELIB_NAME_AW(StrToInt)
944#define StrToLong WINELIB_NAME_AW(StrToInt)
945
948#define StrToIntEx WINELIB_NAME_AW(StrToIntEx)
949
952#define StrToIntEx64 WINELIB_NAME_AW(StrToIntEx64)
953
956#define StrTrim WINELIB_NAME_AW(StrTrim)
957
958#ifdef __ms_va_list
961#define wvnsprintf WINELIB_NAME_AW(wvnsprintf)
962#endif
963
966#define wnsprintf WINELIB_NAME_AW(wnsprintf)
967
969
972#define IntlStrEqWorker WINELIB_NAME_AW(IntlStrEqWorker)
973
974#define IntlStrEqNA(s1,s2,n) IntlStrEqWorkerA(TRUE,s1,s2,n)
975#define IntlStrEqNW(s1,s2,n) IntlStrEqWorkerW(TRUE,s1,s2,n)
976#define IntlStrEqN WINELIB_NAME_AW(IntlStrEqN)
977
978#define IntlStrEqNIA(s1,s2,n) IntlStrEqWorkerA(FALSE,s1,s2,n)
979#define IntlStrEqNIW(s1,s2,n) IntlStrEqWorkerW(FALSE,s1,s2,n)
980#define IntlStrEqNI WINELIB_NAME_AW(IntlStrEqNI)
981
984#define StrRetToStr WINELIB_NAME_AW(StrRetToStr)
985
988#define StrRetToBuf WINELIB_NAME_AW(StrRetToBuf)
989
991
994#define IsCharSpace WINELIB_NAME_AW(IsCharSpace)
995
996#endif /* NO_SHLWAPI_STRFCNS */
997
998
999/* GDI functions */
1000#ifndef NO_SHLWAPI_GDI
1001
1003
1005
1007
1009
1010#endif /* NO_SHLWAPI_GDI */
1011
1012/* Security functions */
1014
1015/* Stream functions */
1016#ifndef NO_SHLWAPI_STREAM
1017
1020#define SHOpenRegStream WINELIB_NAME_AW(SHOpenRegStream2) /* Uses version 2 */
1021
1024#define SHOpenRegStream2 WINELIB_NAME_AW(SHOpenRegStream2)
1025
1028#define SHCreateStreamOnFile WINELIB_NAME_AW(SHCreateStreamOnFile)
1029
1033
1034#endif /* NO_SHLWAPI_STREAM */
1035
1038
1039/* SHAutoComplete flags */
1040#define SHACF_DEFAULT 0x00000000
1041#define SHACF_FILESYSTEM 0x00000001
1042#define SHACF_URLHISTORY 0x00000002
1043#define SHACF_URLMRU 0x00000004
1044#define SHACF_URLALL (SHACF_URLHISTORY|SHACF_URLMRU)
1045#define SHACF_USETAB 0x00000008
1046#define SHACF_FILESYS_ONLY 0x00000010
1047#define SHACF_FILESYS_DIRS 0x00000020
1048#define SHACF_AUTOSUGGEST_FORCE_ON 0x10000000
1049#define SHACF_AUTOSUGGEST_FORCE_OFF 0x20000000
1050#define SHACF_AUTOAPPEND_FORCE_ON 0x40000000
1051#define SHACF_AUTOAPPEND_FORCE_OFF 0x80000000
1052
1054
1055/* Threads */
1060
1061/* SHCreateThread flags */
1062enum
1063{
1064 CTF_INSIST = 0x00000001, /* Always call */
1065 CTF_THREAD_REF = 0x00000002, /* Hold thread ref */
1066 CTF_PROCESS_REF = 0x00000004, /* Hold process ref */
1067 CTF_COINIT_STA = 0x00000008,
1068 CTF_COINIT = 0x00000008, /* Startup COM first */
1069 CTF_FREELIBANDEXIT = 0x00000010, /* Hold DLL ref */
1070 CTF_REF_COUNTED = 0x00000020, /* Thread is ref counted */
1071 CTF_WAIT_ALLOWCOM = 0x00000040, /* Allow marshalling */
1072 CTF_UNUSED = 0x00000080,
1073 CTF_INHERITWOW64 = 0x00000100,
1076 CTF_OLEINITIALIZE = 0x00000800,
1077 CTF_COINIT_MTA = 0x00001000,
1078 CTF_NOADDREFLIB = 0x00002000,
1079};
1080
1082
1084
1085/* Version Information */
1086
1087typedef struct _DllVersionInfo {
1088 DWORD cbSize;
1094
1095#define DLLVER_PLATFORM_WINDOWS 0x01 /* Win9x */
1096#define DLLVER_PLATFORM_NT 0x02 /* WinNT */
1097
1099
1100#ifdef __WINESRC__
1101/* shouldn't be here, but is nice for type checking */
1103#endif
1104
1105typedef struct _DLLVERSIONINFO2 {
1107 DWORD dwFlags; /* Reserved */
1108 ULONGLONG DECLSPEC_ALIGN(8) ullVersion; /* 16 bits each for Major, Minor, Build, QFE */
1110
1111#define DLLVER_MAJOR_MASK 0xFFFF000000000000
1112#define DLLVER_MINOR_MASK 0x0000FFFF00000000
1113#define DLLVER_BUILD_MASK 0x00000000FFFF0000
1114#define DLLVER_QFE_MASK 0x000000000000FFFF
1115
1116#define MAKEDLLVERULL(mjr, mnr, bld, qfe) (((ULONGLONG)(mjr)<< 48)| \
1117 ((ULONGLONG)(mnr)<< 32) | ((ULONGLONG)(bld)<< 16) | (ULONGLONG)(qfe))
1118
1120
1121
1122/* IsOS definitions */
1123
1124#define OS_WIN32SORGREATER 0x00
1125#define OS_NT 0x01
1126#define OS_WIN95ORGREATER 0x02
1127#define OS_NT4ORGREATER 0x03
1128#define OS_WIN2000ORGREATER_ALT 0x04
1129#define OS_WIN98ORGREATER 0x05
1130#define OS_WIN98_GOLD 0x06
1131#define OS_WIN2000ORGREATER 0x07
1132#define OS_WIN2000PRO 0x08
1133#define OS_WIN2000SERVER 0x09
1134#define OS_WIN2000ADVSERVER 0x0A
1135#define OS_WIN2000DATACENTER 0x0B
1136#define OS_WIN2000TERMINAL 0x0C
1137#define OS_EMBEDDED 0x0D
1138#define OS_TERMINALCLIENT 0x0E
1139#define OS_TERMINALREMOTEADMIN 0x0F
1140#define OS_WIN95_GOLD 0x10
1141#define OS_MEORGREATER 0x11
1142#define OS_XPORGREATER 0x12
1143#define OS_HOME 0x13
1144#define OS_PROFESSIONAL 0x14
1145#define OS_DATACENTER 0x15
1146#define OS_ADVSERVER 0x16
1147#define OS_SERVER 0x17
1148#define OS_TERMINALSERVER 0x18
1149#define OS_PERSONALTERMINALSERVER 0x19
1150#define OS_FASTUSERSWITCHING 0x1A
1151#define OS_WELCOMELOGONUI 0x1B
1152#define OS_DOMAINMEMBER 0x1C
1153#define OS_ANYSERVER 0x1D
1154#define OS_WOW6432 0x1E
1155#define OS_WEBSERVER 0x1F
1156#define OS_SMALLBUSINESSSERVER 0x20
1157#define OS_TABLETPC 0x21
1158#define OS_SERVERADMINUI 0x22
1159#define OS_MEDIACENTER 0x23
1160#define OS_APPLIANCE 0x24
1161
1163
1164/* SHSetTimerQueueTimer definitions */
1165#define TPS_EXECUTEIO 0x00000001
1166#define TPS_LONGEXECTIME 0x00000008
1167
1168/* SHFormatDateTimeA/SHFormatDateTimeW flags */
1169#define FDTF_SHORTTIME 0x00000001
1170#define FDTF_SHORTDATE 0x00000002
1171#define FDTF_DEFAULT (FDTF_SHORTDATE | FDTF_SHORTTIME)
1172#define FDTF_LONGDATE 0x00000004
1173#define FDTF_LONGTIME 0x00000008
1174#define FDTF_RELATIVE 0x00000010
1175#define FDTF_LTRDATE 0x00000100
1176#define FDTF_RTLDATE 0x00000200
1177#define FDTF_NOAUTOREADINGORDER 0x00000400
1178
1181
1182typedef struct
1183{
1184 const IID *piid;
1187
1188WINSHLWAPI HRESULT WINAPI QISearch(void* base, const QITAB *pqit, REFIID riid, void **ppv);
1189
1190#define PLATFORM_UNKNOWN 0
1191#define PLATFORM_IE3 1
1192#define PLATFORM_BROWSERONLY 1
1193#define PLATFORM_INTEGRATED 2
1194
1196
1197#define SHGVSPB_PERUSER 0x00000001
1198#define SHGVSPB_ALLUSERS 0x00000002
1199#define SHGVSPB_PERFOLDER 0x00000004
1200#define SHGVSPB_ALLFOLDERS 0x00000008
1201#define SHGVSPB_INHERIT 0x00000010
1202#define SHGVSPB_ROAM 0x00000020
1203#define SHGVSPB_NOAUTODEFAULTS 0x80000000
1204#define SHGVSPB_FOLDER (SHGVSPB_PERUSER | SHGVSPB_PERFOLDER)
1205#define SHGVSPB_FOLDERNODEFAULTS (SHGVSPB_PERUSER | SHGVSPB_PERFOLDER | SHGVSPB_NOAUTODEFAULTS)
1206#define SHGVSPB_USERDEFAULTS (SHGVSPB_PERUSER | SHGVSPB_ALLFOLDERS)
1207#define SHGVSPB_GLOBALDEFAULTS (SHGVSPB_ALLUSERS | SHGVSPB_ALLFOLDERS)
1208
1210
1211#define ILMM_IE4 0
1212
1214
1215#include <poppack.h>
1216
1221
1222#ifdef __cplusplus
1223} /* extern "C" */
1224#endif /* defined(__cplusplus) */
1225
1226#endif /* __WINE_SHLWAPI_H */
#define DECLARE_INTERFACE_(i, b)
Definition: basetyps.h:78
#define PURE
Definition: basetyps.h:64
#define THIS_
Definition: basetyps.h:65
#define THIS
Definition: basetyps.h:66
#define STDMETHOD_(t, m)
Definition: basetyps.h:63
#define STDMETHOD(m)
Definition: basetyps.h:62
STDAPI DllGetVersion(DLLVERSIONINFO *info)
Definition: browseui.cpp:221
_In_ BOOLEAN Release
Definition: cdrom.h:920
static LSTATUS(WINAPI *pRegDeleteTreeW)(HKEY
INT WINAPI StrToIntW(LPCWSTR lpString)
Definition: string.c:407
BOOL WINAPI IntlStrEqWorkerA(BOOL bCase, LPCSTR lpszStr, LPCSTR lpszComp, int iLen)
Definition: string.c:860
LPWSTR WINAPI StrChrIW(LPCWSTR lpszStr, WCHAR ch)
Definition: string.c:631
LPSTR WINAPI StrRStrIA(LPCSTR lpszStr, LPCSTR lpszEnd, LPCSTR lpszSearch)
Definition: string.c:662
int WINAPI StrCSpnIA(LPCSTR lpszStr, LPCSTR lpszMatch)
Definition: string.c:746
int WINAPI StrCSpnW(LPCWSTR lpszStr, LPCWSTR lpszMatch)
Definition: string.c:839
LPWSTR WINAPI StrChrW(LPCWSTR lpszStr, WCHAR ch)
Definition: string.c:464
LPWSTR WINAPI StrRChrW(LPCWSTR str, LPCWSTR end, WORD ch)
Definition: string.c:552
LPSTR WINAPI StrStrIA(LPCSTR lpszStr, LPCSTR lpszSearch)
Definition: string.c:351
LPSTR WINAPI StrRChrIA(LPCSTR lpszStr, LPCSTR lpszEnd, WORD ch)
Definition: string.c:790
INT WINAPI StrCmpNIA(LPCSTR lpszStr, LPCSTR lpszComp, INT iLen)
Definition: string.c:296
BOOL WINAPI IntlStrEqWorkerW(BOOL bCase, LPCWSTR lpszStr, LPCWSTR lpszComp, int iLen)
Definition: string.c:888
LPSTR WINAPI StrChrIA(LPCSTR lpszStr, WORD ch)
Definition: string.c:610
LPWSTR WINAPI StrRChrIW(LPCWSTR str, LPCWSTR end, WORD ch)
Definition: string.c:820
LPWSTR WINAPI StrStrW(LPCWSTR lpszStr, LPCWSTR lpszSearch)
Definition: string.c:590
LPSTR WINAPI StrRChrA(LPCSTR lpszStr, LPCSTR lpszEnd, WORD ch)
Definition: string.c:521
INT WINAPI StrToIntA(LPCSTR lpszStr)
Definition: string.c:370
int WINAPI StrCSpnIW(LPCWSTR lpszStr, LPCWSTR lpszMatch)
Definition: string.c:758
LPSTR WINAPI StrChrA(LPCSTR lpszStr, WORD ch)
Definition: string.c:266
INT WINAPI StrCmpNIW(LPCWSTR lpszStr, LPCWSTR lpszComp, INT iLen)
Definition: string.c:307
LPWSTR WINAPI StrStrIW(LPCWSTR lpszStr, LPCWSTR lpszSearch)
Definition: string.c:380
int WINAPI StrCSpnA(LPCSTR lpszStr, LPCSTR lpszMatch)
Definition: string.c:452
INT WINAPI StrCmpNW(LPCWSTR lpszStr, LPCWSTR lpszComp, INT iLen)
Definition: string.c:500
LPSTR WINAPI StrStrA(LPCSTR lpszStr, LPCSTR lpszSearch)
Definition: string.c:578
LPWSTR WINAPI StrRStrIW(LPCWSTR lpszStr, LPCWSTR lpszEnd, LPCWSTR lpszSearch)
Definition: string.c:702
INT WINAPI StrCmpNA(LPCSTR lpszStr, LPCSTR lpszComp, INT iLen)
Definition: string.c:489
OLECHAR * BSTR
Definition: compat.h:2293
#define CALLBACK
Definition: compat.h:35
BOOL WINAPI DECLSPEC_HOTPATCH IsCharSpaceW(WCHAR wc)
Definition: locale.c:6610
BOOL WINAPI DECLSPEC_HOTPATCH IsCharSpaceA(CHAR c)
Definition: locale.c:6598
int WINAPI PathCommonPrefixW(const WCHAR *file1, const WCHAR *file2, WCHAR *path)
Definition: path.c:1620
BOOL WINAPI PathIsRootA(const char *path)
Definition: path.c:1088
BOOL WINAPI PathMatchSpecA(const char *path, const char *mask)
Definition: path.c:2456
BOOL WINAPI PathIsSameRootW(const WCHAR *path1, const WCHAR *path2)
Definition: path.c:2576
void WINAPI PathRemoveExtensionW(WCHAR *path)
Definition: path.c:1946
void WINAPI PathRemoveBlanksW(WCHAR *path)
Definition: path.c:1910
BOOL WINAPI PathIsUNCW(const WCHAR *path)
Definition: path.c:1013
const WCHAR *WINAPI UrlGetLocationW(const WCHAR *url)
Definition: path.c:4506
LPSTR WINAPI PathFindExtensionA(const char *path)
Definition: path.c:1253
INT WINAPI UrlCompareW(const WCHAR *url1, const WCHAR *url2, BOOL ignore_slash)
Definition: path.c:4454
BOOL WINAPI PathIsPrefixA(const char *prefix, const char *path)
Definition: path.c:1670
BOOL WINAPI IsInternetESCEnabled(void)
Definition: path.c:5303
int WINAPI PathCommonPrefixA(const char *file1, const char *file2, char *path)
Definition: path.c:1570
void WINAPI PathRemoveBlanksA(char *path)
Definition: path.c:1886
void WINAPI PathUnquoteSpacesW(WCHAR *path)
Definition: path.c:2006
int WINAPI PathGetDriveNumberW(const WCHAR *path)
Definition: path.c:1810
void WINAPI PathQuoteSpacesA(char *path)
Definition: path.c:2526
BOOL WINAPI PathRemoveFileSpecA(char *path)
Definition: path.c:1108
WCHAR *WINAPI PathRemoveBackslashW(WCHAR *path)
Definition: path.c:2040
BOOL WINAPI UrlIsNoHistoryA(const char *url)
Definition: path.c:4868
BOOL WINAPI PathIsUNCServerShareW(const WCHAR *path)
Definition: path.c:1064
BOOL WINAPI PathIsUNCServerA(const char *path)
Definition: path.c:1859
BOOL WINAPI PathIsFileSpecA(const char *path)
Definition: path.c:1825
INT WINAPI UrlCompareA(const char *url1, const char *url2, BOOL ignore_slash)
Definition: path.c:4435
WCHAR *WINAPI PathFindFileNameW(const WCHAR *path)
Definition: path.c:1701
const char *WINAPI UrlGetLocationA(const char *url)
Definition: path.c:4491
BOOL WINAPI PathFileExistsA(const char *path)
Definition: path.c:2590
BOOL WINAPI UrlIsW(const WCHAR *url, URLIS Urlis)
Definition: path.c:4812
UINT WINAPI PathGetCharTypeA(UCHAR ch)
Definition: path.c:1793
BOOL WINAPI UrlIsOpaqueA(const char *url)
Definition: path.c:4858
BOOL WINAPI PathRelativePathToA(char *path, const char *from, DWORD attributes_from, const char *to, DWORD attributes_to)
Definition: path.c:2357
char *WINAPI PathFindNextComponentA(const char *path)
Definition: path.c:2229
char *WINAPI PathGetArgsA(const char *path)
Definition: path.c:1718
BOOL WINAPI PathSearchAndQualifyA(const char *path, char *buffer, UINT length)
Definition: path.c:2338
BOOL WINAPI UrlIsOpaqueW(const WCHAR *url)
Definition: path.c:4863
void WINAPI PathStripPathA(char *path)
Definition: path.c:2316
void WINAPI PathStripPathW(WCHAR *path)
Definition: path.c:2328
BOOL WINAPI PathRemoveFileSpecW(WCHAR *path)
Definition: path.c:1145
void WINAPI PathRemoveExtensionA(char *path)
Definition: path.c:1934
LPWSTR WINAPI PathFindExtensionW(const WCHAR *path)
Definition: path.c:1274
char *WINAPI PathSkipRootA(const char *path)
Definition: path.c:2267
BOOL WINAPI PathUnExpandEnvStringsW(const WCHAR *path, WCHAR *buffer, UINT buf_len)
Definition: path.c:2705
int WINAPI PathGetDriveNumberA(const char *path)
Definition: path.c:1798
BOOL WINAPI PathIsRelativeA(const char *path)
Definition: path.c:1020
int WINAPI PathParseIconLocationA(char *path)
Definition: path.c:2623
void WINAPI PathUnquoteSpacesA(char *path)
Definition: path.c:1988
BOOL WINAPI PathIsRelativeW(const WCHAR *path)
Definition: path.c:1030
int WINAPI PathParseIconLocationW(WCHAR *path)
Definition: path.c:2644
BOOL WINAPI UrlIsA(const char *url, URLIS Urlis)
Definition: path.c:4775
BOOL WINAPI PathSearchAndQualifyW(const WCHAR *path, WCHAR *buffer, UINT length)
Definition: path.c:2348
char *WINAPI PathRemoveBackslashA(char *path)
Definition: path.c:2024
BOOL WINAPI PathStripToRootW(WCHAR *path)
Definition: path.c:1195
BOOL WINAPI PathStripToRootA(char *path)
Definition: path.c:1181
BOOL WINAPI PathIsSameRootA(const char *path1, const char *path2)
Definition: path.c:2562
BOOL WINAPI UrlIsNoHistoryW(const WCHAR *url)
Definition: path.c:4873
BOOL WINAPI PathIsUNCServerW(const WCHAR *path)
Definition: path.c:1876
BOOL WINAPI PathIsURLW(const WCHAR *path)
Definition: path.c:3238
BOOL WINAPI PathMatchSpecW(const WCHAR *path, const WCHAR *mask)
Definition: path.c:2521
WCHAR *WINAPI PathGetArgsW(const WCHAR *path)
Definition: path.c:1740
BOOL WINAPI PathIsLFNFileSpecA(const char *path)
Definition: path.c:2057
UINT WINAPI PathGetCharTypeW(WCHAR ch)
Definition: path.c:1762
WCHAR *WINAPI PathSkipRootW(const WCHAR *path)
Definition: path.c:2293
BOOL WINAPI PathRelativePathToW(WCHAR *path, const WCHAR *from, DWORD attributes_from, const WCHAR *to, DWORD attributes_to)
Definition: path.c:2376
BOOL WINAPI PathFileExistsW(const WCHAR *path)
Definition: path.c:2607
BOOL WINAPI PathUnExpandEnvStringsA(const char *path, char *buffer, UINT buf_len)
Definition: path.c:2665
char *WINAPI PathFindFileNameA(const char *path)
Definition: path.c:1684
BOOL WINAPI PathIsFileSpecW(const WCHAR *path)
Definition: path.c:1842
BOOL WINAPI PathIsRootW(const WCHAR *path)
Definition: path.c:1101
BOOL WINAPI PathIsLFNFileSpecW(const WCHAR *path)
Definition: path.c:2094
BOOL WINAPI PathIsPrefixW(const WCHAR *prefix, const WCHAR *path)
Definition: path.c:1677
WCHAR *WINAPI PathFindNextComponentW(const WCHAR *path)
Definition: path.c:2248
BOOL WINAPI PathIsUNCA(const char *path)
Definition: path.c:1006
BOOL WINAPI PathIsUNCServerShareA(const char *path)
Definition: path.c:1040
BOOL WINAPI PathIsURLA(const char *path)
Definition: path.c:3222
void WINAPI PathQuoteSpacesW(WCHAR *path)
Definition: path.c:2544
LONG WINAPI SHRegDeleteEmptyUSKeyW(HUSKEY hUSKey, const WCHAR *value, SHREGDEL_FLAGS flags)
Definition: registry.c:3653
LONG WINAPI SHRegDeleteUSValueA(HUSKEY hUSKey, const char *value, SHREGDEL_FLAGS flags)
Definition: registry.c:3659
LONG WINAPI SHRegGetUSValueW(const WCHAR *subkey, const WCHAR *value, DWORD *type, void *data, DWORD *data_len, BOOL ignore_hkcu, void *default_data, DWORD default_data_len)
Definition: registry.c:4077
LONG WINAPI SHRegSetUSValueW(const WCHAR *subkey, const WCHAR *value, DWORD type, void *data, DWORD data_len, DWORD flags)
Definition: registry.c:3912
LONG WINAPI SHRegWriteUSValueA(HUSKEY hUSKey, const char *value, DWORD type, void *data, DWORD data_len, DWORD flags)
Definition: registry.c:3804
LONG WINAPI SHRegDeleteEmptyUSKeyA(HUSKEY hUSKey, const char *value, SHREGDEL_FLAGS flags)
Definition: registry.c:3647
LONG WINAPI SHRegQueryInfoUSKeyA(HUSKEY hUSKey, DWORD *subkeys, DWORD *max_subkey_len, DWORD *values, DWORD *max_value_name_len, SHREGENUM_FLAGS flags)
Definition: registry.c:3936
LONG WINAPI SHRegQueryInfoUSKeyW(HUSKEY hUSKey, DWORD *subkeys, DWORD *max_subkey_len, DWORD *values, DWORD *max_value_name_len, SHREGENUM_FLAGS flags)
Definition: registry.c:3959
LONG WINAPI SHRegEnumUSKeyA(HUSKEY hUSKey, DWORD index, char *name, DWORD *name_len, SHREGENUM_FLAGS flags)
Definition: registry.c:3705
LONG WINAPI SHRegGetUSValueA(const char *subkey, const char *value, DWORD *type, void *data, DWORD *data_len, BOOL ignore_hkcu, void *default_data, DWORD default_data_len)
Definition: registry.c:4056
LONG WINAPI SHRegOpenUSKeyA(const char *path, REGSAM access_mask, HUSKEY relative_key, HUSKEY *uskey, BOOL ignore_hkcu)
Definition: registry.c:3737
LONG WINAPI SHRegCreateUSKeyA(LPCSTR path, REGSAM samDesired, HUSKEY relative_key, PHUSKEY new_uskey, DWORD flags)
Definition: registry.c:3528
BOOL WINAPI SHRegGetBoolUSValueA(const char *subkey, const char *value, BOOL ignore_hkcu, BOOL default_value)
Definition: registry.c:4098
BOOL WINAPI SHRegGetBoolUSValueW(const WCHAR *subkey, const WCHAR *value, BOOL ignore_hkcu, BOOL default_value)
Definition: registry.c:4139
LONG WINAPI SHRegEnumUSValueA(HUSKEY hUSKey, DWORD index, char *value_name, DWORD *value_name_len, DWORD *type, void *data, DWORD *data_len, SHREGENUM_FLAGS flags)
Definition: registry.c:3671
LONG WINAPI SHRegCloseUSKey(HUSKEY hUSKey)
Definition: registry.c:3626
LONG WINAPI SHRegSetUSValueA(const char *subkey, const char *value, DWORD type, void *data, DWORD data_len, DWORD flags)
Definition: registry.c:3888
LONG WINAPI SHRegEnumUSValueW(HUSKEY hUSKey, DWORD index, WCHAR *value_name, DWORD *value_name_len, DWORD *type, void *data, DWORD *data_len, SHREGENUM_FLAGS flags)
Definition: registry.c:3688
LONG WINAPI SHRegQueryUSValueW(HUSKEY hUSKey, const WCHAR *value, DWORD *type, void *data, DWORD *data_len, BOOL ignore_hkcu, void *default_data, DWORD default_data_len)
Definition: registry.c:4019
LONG WINAPI SHRegDeleteUSValueW(HUSKEY hUSKey, const WCHAR *value, SHREGDEL_FLAGS flags)
Definition: registry.c:3665
LONG WINAPI SHRegOpenUSKeyW(const WCHAR *path, REGSAM access_mask, HUSKEY relative_key, HUSKEY *uskey, BOOL ignore_hkcu)
Definition: registry.c:3747
LONG WINAPI SHRegCreateUSKeyW(const WCHAR *path, REGSAM samDesired, HUSKEY relative_key, PHUSKEY new_uskey, DWORD flags)
Definition: registry.c:3582
LONG WINAPI SHRegQueryUSValueA(HUSKEY hUSKey, const char *value, DWORD *type, void *data, DWORD *data_len, BOOL ignore_hkcu, void *default_data, DWORD default_data_len)
Definition: registry.c:3982
LONG WINAPI SHRegEnumUSKeyW(HUSKEY hUSKey, DWORD index, WCHAR *name, DWORD *name_len, SHREGENUM_FLAGS flags)
Definition: registry.c:3721
LONG WINAPI SHRegWriteUSValueW(HUSKEY hUSKey, const WCHAR *value, DWORD type, void *data, DWORD data_len, DWORD flags)
Definition: registry.c:3814
BOOL WINAPI ChrCmpIW(WCHAR ch1, WCHAR ch2)
Definition: string.c:341
BOOL WINAPI StrToIntExW(const WCHAR *str, DWORD flags, INT *ret)
Definition: string.c:972
BOOL WINAPI ChrCmpIA(WORD ch1, WORD ch2)
Definition: string.c:334
WCHAR *WINAPI StrCatBuffW(WCHAR *str, const WCHAR *cat, INT max_len)
Definition: string.c:1390
WCHAR *WINAPI StrStrNW(const WCHAR *str, const WCHAR *search, UINT max_len)
Definition: string.c:376
BOOL WINAPI StrIsIntlEqualA(BOOL case_sensitive, const char *str, const char *cmp, int len)
Definition: string.c:1341
WCHAR *WINAPI StrStrNIW(const WCHAR *str, const WCHAR *search, UINT max_len)
Definition: string.c:402
int WINAPI StrCmpW(const WCHAR *str, const WCHAR *comp)
Definition: string.c:450
BOOL WINAPI StrTrimA(char *str, const char *trim)
Definition: string.c:758
BOOL WINAPI StrIsIntlEqualW(BOOL case_sensitive, const WCHAR *str, const WCHAR *cmp, int len)
Definition: string.c:1357
BOOL WINAPI StrTrimW(WCHAR *str, const WCHAR *trim)
Definition: string.c:796
BOOL WINAPI StrToIntExA(const char *str, DWORD flags, INT *ret)
Definition: string.c:960
char *WINAPI StrCatBuffA(char *str, const char *cat, INT max_len)
Definition: string.c:1373
int WINAPI StrCmpLogicalW(const WCHAR *str, const WCHAR *comp)
Definition: string.c:1289
char *WINAPI StrPBrkA(const char *str, const char *match)
Definition: string.c:735
WCHAR *WINAPI StrDupW(const WCHAR *str)
Definition: string.c:313
int WINAPI StrSpnW(const WCHAR *str, const WCHAR *match)
Definition: string.c:541
int WINAPI StrCmpIW(const WCHAR *str, const WCHAR *comp)
Definition: string.c:456
DWORD WINAPI StrCatChainW(WCHAR *str, DWORD max_len, DWORD at, const WCHAR *cat)
Definition: string.c:1407
char *WINAPI StrDupA(const char *str)
Definition: string.c:292
BOOL WINAPI StrToInt64ExA(const char *str, DWORD flags, LONGLONG *ret)
Definition: string.c:834
int WINAPI StrSpnA(const char *str, const char *match)
Definition: string.c:525
BOOL WINAPI StrToInt64ExW(const WCHAR *str, DWORD flags, LONGLONG *ret)
Definition: string.c:897
WCHAR *WINAPI StrPBrkW(const WCHAR *str, const WCHAR *match)
Definition: string.c:752
WCHAR *WINAPI StrCpyNW(WCHAR *dst, const WCHAR *src, int count)
Definition: string.c:462
#define __WINE_DEALLOC(...)
Definition: corecrt.h:334
#define __WINE_MALLOC
Definition: corecrt.h:340
BOOL WINAPI AssocIsDangerous(LPCWSTR lpszAssoc)
Definition: assoc.c:634
VOID WINAPI IUnknown_Set(IUnknown **lppDest, IUnknown *lpUnknown)
Definition: ordinal.c:2190
HPALETTE WINAPI SHCreateShellPalette(HDC hdc)
Definition: ordinal.c:4615
void WINAPI IUnknown_AtomicRelease(IUnknown **lpUnknown)
Definition: ordinal.c:1245
COLORREF WINAPI ColorHLSToRGB(WORD wHue, WORD wLuminosity, WORD wSaturation)
Definition: ordinal.c:4043
BOOL WINAPI SHSkipJunction(IBindCtx *pbc, const CLSID *pclsid)
Definition: ordinal.c:4794
COLORREF WINAPI ColorAdjustLuma(COLORREF cRGB, int dwLuma, BOOL bUnknown)
Definition: ordinal.c:3909
VOID WINAPI ColorRGBToHLS(COLORREF cRGB, LPWORD pwHue, LPWORD pwLuminance, LPWORD pwSaturation)
Definition: ordinal.c:4506
void WINAPI PathRemoveArgsW(LPWSTR lpszPath)
Definition: path.c:782
BOOL WINAPI PathIsDirectoryA(LPCSTR lpszPath)
Definition: path.c:1707
BOOL WINAPI PathMakeSystemFolderA(LPCSTR lpszPath)
Definition: path.c:3147
BOOL WINAPI PathIsNetworkPathW(LPCWSTR lpszPath)
Definition: path.c:3836
LPSTR WINAPI PathBuildRootA(LPSTR lpszPath, int drive)
Definition: path.c:332
BOOL WINAPI PathMakeSystemFolderW(LPCWSTR lpszPath)
Definition: path.c:3167
BOOL WINAPI PathIsNetworkPathA(LPCSTR lpszPath)
Definition: path.c:3810
void WINAPI PathRemoveArgsA(LPSTR lpszPath)
Definition: path.c:759
BOOL WINAPI PathFindOnPathW(LPWSTR lpszFile, LPCWSTR *lppszOtherDirs)
Definition: path.c:1412
BOOL WINAPI PathIsDirectoryEmptyW(LPCWSTR lpszPath)
Definition: path.c:3978
BOOL WINAPI PathCompactPathExA(LPSTR lpszDest, LPCSTR lpszPath, UINT cchMax, DWORD dwFlags)
Definition: path.c:1444
BOOL WINAPI PathIsSystemFolderA(LPCSTR lpszPath, DWORD dwAttrib)
Definition: path.c:2247
BOOL WINAPI PathCompactPathExW(LPWSTR lpszDest, LPCWSTR lpszPath, UINT cchMax, DWORD dwFlags)
Definition: path.c:1469
BOOL WINAPI PathMakePrettyW(LPWSTR lpszPath)
Definition: path.c:2747
void WINAPI PathUndecorateW(LPWSTR pszPath)
Definition: path.c:4135
BOOL WINAPI PathCompactPathA(HDC hDC, LPSTR lpszPath, UINT dx)
Definition: path.c:2917
BOOL WINAPI PathUnmakeSystemFolderW(LPCWSTR lpszPath)
Definition: path.c:3715
BOOL WINAPI PathFindOnPathA(LPSTR lpszFile, LPCSTR *lppszOtherDirs)
Definition: path.c:1401
LPWSTR WINAPI PathBuildRootW(LPWSTR lpszPath, int drive)
Definition: path.c:351
VOID WINAPI PathSetDlgItemPathA(HWND hDlg, int id, LPCSTR lpszPath)
Definition: path.c:3748
BOOL WINAPI PathIsContentTypeW(LPCWSTR lpszPath, LPCWSTR lpszContentType)
Definition: path.c:2128
BOOL WINAPI PathCompactPathW(HDC hDC, LPWSTR lpszPath, UINT dx)
Definition: path.c:2938
BOOL WINAPI PathIsSystemFolderW(LPCWSTR lpszPath, DWORD dwAttrib)
Definition: path.c:2265
BOOL WINAPI PathMakePrettyA(LPSTR lpszPath)
Definition: path.c:2715
void WINAPI PathUndecorateA(LPSTR pszPath)
Definition: path.c:4111
LPCSTR WINAPI PathFindSuffixArrayA(LPCSTR lpszSuffix, LPCSTR *lppszArray, int dwCount)
Definition: path.c:4040
BOOL WINAPI PathUnmakeSystemFolderA(LPCSTR lpszPath)
Definition: path.c:3696
VOID WINAPI PathSetDlgItemPathW(HWND hDlg, int id, LPCWSTR lpszPath)
Definition: path.c:3766
LPCWSTR WINAPI PathFindSuffixArrayW(LPCWSTR lpszSuffix, LPCWSTR *lppszArray, int dwCount)
Definition: path.c:4071
BOOL WINAPI PathIsDirectoryW(LPCWSTR lpszPath)
Definition: path.c:1751
BOOL WINAPI PathIsContentTypeA(LPCSTR lpszPath, LPCSTR lpszContentType)
Definition: path.c:2105
BOOL WINAPI PathIsDirectoryEmptyA(LPCSTR lpszPath)
Definition: path.c:3958
DWORD WINAPI SHCopyKeyW(HKEY hKeySrc, LPCWSTR lpszSrcSubKey, HKEY hKeyDst, DWORD dwReserved)
Definition: reg.c:2303
LONG WINAPI SHEnumKeyExW(HKEY hKey, DWORD dwIndex, LPWSTR lpszSubKey, LPDWORD pwLen)
Definition: reg.c:1848
DWORD WINAPI SHCopyKeyA(HKEY hKeySrc, LPCSTR lpszSrcSubKey, HKEY hKeyDst, DWORD dwReserved)
Definition: reg.c:2286
DWORD WINAPI SHRegSetPathA(HKEY hKey, LPCSTR lpszSubKey, LPCSTR lpszValue, LPCSTR lpszPath, DWORD dwFlags)
Definition: reg.c:1153
DWORD WINAPI SHDeleteValueW(HKEY hKey, LPCWSTR lpszSubKey, LPCWSTR lpszValue)
Definition: reg.c:1804
DWORD WINAPI SHDeleteKeyW(HKEY hKey, LPCWSTR lpszSubKey)
Definition: reg.c:1588
LONG WINAPI SHQueryInfoKeyA(HKEY hKey, LPDWORD pwSubKeys, LPDWORD pwSubKeyMax, LPDWORD pwValues, LPDWORD pwValueMax)
Definition: reg.c:1379
DWORD WINAPI SHGetValueW(HKEY hKey, LPCWSTR lpszSubKey, LPCWSTR lpszValue, LPDWORD pwType, LPVOID pvData, LPDWORD pcbData)
Definition: reg.c:1278
DWORD WINAPI SHDeleteOrphanKeyW(HKEY hKey, LPCWSTR lpszSubKey)
Definition: reg.c:1745
DWORD WINAPI SHRegGetPathW(HKEY hKey, LPCWSTR lpszSubKey, LPCWSTR lpszValue, LPWSTR lpszPath, DWORD dwFlags)
Definition: reg.c:1125
LONG WINAPI SHEnumValueA(HKEY hKey, DWORD dwIndex, LPSTR lpszValue, LPDWORD pwLen, LPDWORD pwType, LPVOID pvData, LPDWORD pcbData)
Definition: reg.c:1874
DWORD WINAPI SHGetValueA(HKEY hKey, LPCSTR lpszSubKey, LPCSTR lpszValue, LPDWORD pwType, LPVOID pvData, LPDWORD pcbData)
Definition: reg.c:1249
LONG WINAPI SHEnumKeyExA(HKEY hKey, DWORD dwIndex, LPSTR lpszSubKey, LPDWORD pwLen)
Definition: reg.c:1835
DWORD WINAPI SHDeleteEmptyKeyA(HKEY hKey, LPCSTR lpszSubKey)
Definition: reg.c:1650
DWORD WINAPI SHDeleteEmptyKeyW(HKEY hKey, LPCWSTR lpszSubKey)
Definition: reg.c:1679
DWORD WINAPI SHQueryValueExW(HKEY hKey, LPCWSTR lpszValue, LPDWORD lpReserved, LPDWORD pwType, LPVOID pvData, LPDWORD pcbData)
Definition: reg.c:1503
DWORD WINAPI SHQueryValueExA(HKEY hKey, LPCSTR lpszValue, LPDWORD lpReserved, LPDWORD pwType, LPVOID pvData, LPDWORD pcbData)
Definition: reg.c:1444
LONG WINAPI SHQueryInfoKeyW(HKEY hKey, LPDWORD pwSubKeys, LPDWORD pwSubKeyMax, LPDWORD pwValues, LPDWORD pwValueMax)
Definition: reg.c:1393
DWORD WINAPI SHSetValueA(HKEY hKey, LPCSTR lpszSubKey, LPCSTR lpszValue, DWORD dwType, LPCVOID pvData, DWORD cbData)
Definition: reg.c:1320
HKEY WINAPI SHRegDuplicateHKey(HKEY hKey)
Definition: reg.c:2256
DWORD WINAPI SHDeleteOrphanKeyA(HKEY hKey, LPCSTR lpszSubKey)
Definition: reg.c:1716
DWORD WINAPI SHRegGetPathA(HKEY hKey, LPCSTR lpszSubKey, LPCSTR lpszValue, LPSTR lpszPath, DWORD dwFlags)
Definition: reg.c:1109
DWORD WINAPI SHSetValueW(HKEY hKey, LPCWSTR lpszSubKey, LPCWSTR lpszValue, DWORD dwType, LPCVOID pvData, DWORD cbData)
Definition: reg.c:1348
DWORD WINAPI SHRegSetPathW(HKEY hKey, LPCWSTR lpszSubKey, LPCWSTR lpszValue, LPCWSTR lpszPath, DWORD dwFlags)
Definition: reg.c:1195
int WINAPI SHRegGetIntW(HKEY hKey, LPCWSTR lpszValue, int iDefault)
Definition: reg.c:2416
DWORD WINAPI SHDeleteValueA(HKEY hKey, LPCSTR lpszSubKey, LPCSTR lpszValue)
Definition: reg.c:1783
LONG WINAPI SHEnumValueW(HKEY hKey, DWORD dwIndex, LPWSTR lpszValue, LPDWORD pwLen, LPDWORD pwType, LPVOID pvData, LPDWORD pcbData)
Definition: reg.c:1890
DWORD WINAPI SHDeleteKeyA(HKEY hKey, LPCSTR lpszSubKey)
Definition: reg.c:1575
INT WINAPI StrFromTimeIntervalW(LPWSTR lpszStr, UINT cchMax, DWORD dwMS, int iDigits)
Definition: string.c:2283
LPSTR WINAPI StrNCatA(LPSTR lpszStr, LPCSTR lpszCat, INT cchMax)
Definition: string.c:1922
LPSTR WINAPI StrFormatByteSize64A(LONGLONG llBytes, LPSTR lpszDest, UINT cchMax)
Definition: string.c:2632
LPWSTR WINAPI StrFormatKBSizeW(LONGLONG llBytes, LPWSTR lpszDest, UINT cchMax)
Definition: string.c:1887
LPWSTR WINAPI StrCatW(LPWSTR lpszStr, LPCWSTR lpszSrc)
Definition: string.c:452
LPSTR WINAPI StrFormatByteSizeA(DWORD dwBytes, LPSTR lpszDest, UINT cchMax)
Definition: string.c:2660
INT WINAPI StrFromTimeIntervalA(LPSTR lpszStr, UINT cchMax, DWORD dwMS, int iDigits)
Definition: string.c:2261
LPWSTR WINAPI StrFormatByteSizeW(LONGLONG llBytes, LPWSTR lpszDest, UINT cchMax)
Definition: string.c:2524
LPWSTR WINAPI StrNCatW(LPWSTR lpszStr, LPCWSTR lpszCat, INT cchMax)
Definition: string.c:1943
LPWSTR WINAPI StrCpyW(LPWSTR lpszStr, LPCWSTR lpszSrc)
Definition: string.c:514
LPSTR WINAPI StrFormatKBSizeA(LONGLONG llBytes, LPSTR lpszDest, UINT cchMax)
Definition: string.c:1871
BOOL WINAPI SHCreateThread(LPTHREAD_START_ROUTINE pfnThreadProc, VOID *pData, DWORD dwFlags, LPTHREAD_START_ROUTINE pfnCallback)
Definition: thread.c:356
int WINAPIV wnsprintfA(LPSTR lpOut, int cchLimitIn, LPCSTR lpFmt,...)
Definition: wsprintf.c:547
int WINAPIV wnsprintfW(LPWSTR lpOut, int cchLimitIn, LPCWSTR lpFmt,...)
Definition: wsprintf.c:564
INT WINAPI wvnsprintfA(LPSTR buffer, INT maxlen, LPCSTR spec, __ms_va_list args)
Definition: wsprintf.c:325
INT WINAPI wvnsprintfW(LPWSTR buffer, INT maxlen, LPCWSTR spec, __ms_va_list args)
Definition: wsprintf.c:432
unsigned short WORD
Definition: ntddk_ex.h:93
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
static BYTE * GetData(BYTE *pData, ULONG *pLength)
Definition: assembly.c:114
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
GLuint buffer
Definition: glext.h:5915
GLsizeiptr size
Definition: glext.h:5919
GLbitfield flags
Definition: glext.h:7161
HLOCAL NTAPI LocalFree(HLOCAL hMem)
Definition: heapmem.c:1594
REFIID riid
Definition: atlbase.h:39
REFIID LPVOID * ppv
Definition: atlbase.h:39
PTHREAD_START_ROUTINE LPTHREAD_START_ROUTINE
Definition: minwinbase.h:124
CONST void * LPCVOID
Definition: minwindef.h:164
static HDC
Definition: imagelist.c:88
static HRESULT QueryInterface(REFIID, void **)
Definition: events.c:2587
static ULONG WINAPI AddRef(IStream *iface)
Definition: clist.c:83
unsigned int UINT
Definition: ndis.h:50
#define PathAddExtensionA
Definition: pathcch.h:305
#define PathCanonicalizeA
Definition: pathcch.h:313
#define PathAddExtensionW
Definition: pathcch.h:306
#define PathCombineA
Definition: pathcch.h:317
#define PathAppendA
Definition: pathcch.h:309
#define PathCanonicalizeW
Definition: pathcch.h:314
#define PathAddBackslashA
Definition: pathcch.h:301
#define PathCombineW
Definition: pathcch.h:318
#define PathRenameExtensionA
Definition: pathcch.h:321
#define PathRenameExtensionW
Definition: pathcch.h:322
#define PathAddBackslashW
Definition: pathcch.h:302
#define PathAppendW
Definition: pathcch.h:310
short WCHAR
Definition: pedump.c:58
long LONG
Definition: pedump.c:60
char CHAR
Definition: pedump.c:57
#define REFIID
Definition: guiddef.h:118
_In_ DWORD _In_ DWORD dwOffset
Definition: ntgdi.h:2033
@ ASSOCF_REMAPRUNDLL
Definition: shlwapi.h:867
@ ASSOCF_IS_PROTOCOL
Definition: shlwapi.h:873
@ ASSOCF_INIT_FIXED_PROGID
Definition: shlwapi.h:872
@ ASSOCF_NOFIXUPS
Definition: shlwapi.h:868
@ ASSOCF_INIT_DEFAULTTOSTAR
Definition: shlwapi.h:862
@ ASSOCF_INIT_DEFAULTTOFOLDER
Definition: shlwapi.h:863
@ ASSOCF_IGNOREBASECLASS
Definition: shlwapi.h:869
@ ASSOCF_INIT_NOREMAPCLSID
Definition: shlwapi.h:859
@ ASSOCF_VERIFY
Definition: shlwapi.h:866
@ ASSOCF_INIT_IGNOREUNKNOWN
Definition: shlwapi.h:870
@ ASSOCF_NOUSERSETTINGS
Definition: shlwapi.h:864
@ ASSOCF_OPEN_BYEXENAME
Definition: shlwapi.h:861
@ ASSOCF_NONE
Definition: shlwapi.h:858
@ ASSOCF_INIT_FOR_FILE
Definition: shlwapi.h:874
@ ASSOCF_NOTRUNCATE
Definition: shlwapi.h:865
@ ASSOCF_INIT_BYEXENAME
Definition: shlwapi.h:860
URLIS
Definition: shlwapi.h:596
@ URLIS_NOHISTORY
Definition: shlwapi.h:599
@ URLIS_OPAQUE
Definition: shlwapi.h:598
@ URLIS_APPLIABLE
Definition: shlwapi.h:601
@ URLIS_DIRECTORY
Definition: shlwapi.h:602
@ URLIS_FILEURL
Definition: shlwapi.h:600
@ URLIS_URL
Definition: shlwapi.h:597
@ URLIS_HASQUERY
Definition: shlwapi.h:603
@ SFBS_FLAGS_TRUNCATE_UNDISPLAYED_DECIMAL_DIGITS
Definition: shlwapi.h:1265
@ SFBS_FLAGS_ROUND_TO_NEAREST_DISPLAYED_DIGIT
Definition: shlwapi.h:1264
LWSTDAPI PathMatchSpecExA(_In_ LPCSTR, _In_ LPCSTR, _In_ DWORD)
LWSTDAPI SHLoadIndirectString(_In_ LPCWSTR, _Out_writes_(cchOutBuf) LPWSTR, _In_ UINT cchOutBuf, _Reserved_ PVOID *)
_In_opt_ IUnknown * punk
Definition: shlwapi.h:158
LWSTDAPI IUnknown_QueryService(_In_opt_ IUnknown *punk, _In_ REFGUID guidService, _In_ REFIID riid, _Outptr_ void **ppvOut)
LWSTDAPI IUnknown_GetWindow(_In_ IUnknown *punk, _Out_ HWND *phwnd)
ASSOCDATA
Definition: shlwapi.h:926
@ ASSOCDATA_HASPERUSERASSOC
Definition: shlwapi.h:930
@ ASSOCDATA_EDITFLAGS
Definition: shlwapi.h:932
@ ASSOCDATA_MSIDESCRIPTOR
Definition: shlwapi.h:927
@ ASSOCDATA_VALUE
Definition: shlwapi.h:933
@ ASSOCDATA_NOACTIVATEHANDLER
Definition: shlwapi.h:928
@ ASSOCDATA_MAX
Definition: shlwapi.h:935
@ ASSOCDATA_QUERYCLASSSTORE
Definition: shlwapi.h:929
LWSTDAPI UrlGetPartW(_In_ LPCWSTR, _Out_writes_(*pcchOut) LPWSTR, _Inout_ LPDWORD pcchOut, DWORD, DWORD)
LWSTDAPI SHCreateStreamWrapper(LPBYTE, DWORD, DWORD, struct IStream **)
Definition: regstream.c:698
URL_SCHEME
Definition: shlwapi.h:542
@ URL_SCHEME_SNEWS
Definition: shlwapi.h:557
@ URL_SCHEME_MAILTO
Definition: shlwapi.h:548
@ URL_SCHEME_KNOWNFOLDER
Definition: shlwapi.h:579
@ URL_SCHEME_LOCAL
Definition: shlwapi.h:558
@ URL_SCHEME_MK
Definition: shlwapi.h:554
@ URL_SCHEME_TELNET
Definition: shlwapi.h:551
@ URL_SCHEME_UNKNOWN
Definition: shlwapi.h:544
@ URL_SCHEME_MSSHELLROOTED
Definition: shlwapi.h:564
@ URL_SCHEME_WAIS
Definition: shlwapi.h:552
@ URL_SCHEME_HTTPS
Definition: shlwapi.h:555
@ URL_SCHEME_SEARCH
Definition: shlwapi.h:576
@ URL_SCHEME_FTP
Definition: shlwapi.h:545
@ URL_SCHEME_RES
Definition: shlwapi.h:562
@ URL_SCHEME_NEWS
Definition: shlwapi.h:549
@ URL_SCHEME_MSSHELLIDLIST
Definition: shlwapi.h:565
@ URL_SCHEME_HTTP
Definition: shlwapi.h:546
@ URL_SCHEME_FILE
Definition: shlwapi.h:553
@ URL_SCHEME_WILDCARD
Definition: shlwapi.h:570
@ URL_SCHEME_ABOUT
Definition: shlwapi.h:561
@ URL_SCHEME_NNTP
Definition: shlwapi.h:550
@ URL_SCHEME_INVALID
Definition: shlwapi.h:543
@ URL_SCHEME_SHELL
Definition: shlwapi.h:556
@ URL_SCHEME_MSSHELLDEVICE
Definition: shlwapi.h:569
@ URL_SCHEME_VBSCRIPT
Definition: shlwapi.h:560
@ URL_SCHEME_MSHELP
Definition: shlwapi.h:566
@ URL_SCHEME_SEARCH_MS
Definition: shlwapi.h:573
@ URL_SCHEME_GOPHER
Definition: shlwapi.h:547
@ URL_SCHEME_JAVASCRIPT
Definition: shlwapi.h:559
@ URL_SCHEME_MAXVALUE
Definition: shlwapi.h:581
LWSTDAPI PathMatchSpecExW(_In_ LPCWSTR, _In_ LPCWSTR, _In_ DWORD)
LWSTDAPI UrlGetPartA(_In_ LPCSTR, _Out_writes_(*pcchOut) LPSTR, _Inout_ LPDWORD pcchOut, DWORD, DWORD)
int SFBS_FLAGS
Definition: shlwapi.h:1260
LWSTDAPI PathCreateFromUrlAlloc(_In_ LPCWSTR pszUrl, _Outptr_ LPWSTR *pszPath, DWORD dwReserved)
LWSTDAPI UrlHashA(_In_ LPCSTR, _Out_writes_bytes_(cbHash) unsigned char *, DWORD cbHash)
LWSTDAPI UrlHashW(_In_ LPCWSTR, _Out_writes_bytes_(cbHash) unsigned char *, DWORD cbHash)
LWSTDAPI UrlApplySchemeW(_In_ LPCWSTR, _Out_writes_(*pcchOut) LPWSTR, _Inout_ LPDWORD pcchOut, DWORD)
URL_PART
Definition: shlwapi.h:584
@ URL_PART_SCHEME
Definition: shlwapi.h:586
@ URL_PART_QUERY
Definition: shlwapi.h:591
@ URL_PART_HOSTNAME
Definition: shlwapi.h:587
@ URL_PART_NONE
Definition: shlwapi.h:585
@ URL_PART_USERNAME
Definition: shlwapi.h:588
@ URL_PART_PORT
Definition: shlwapi.h:590
@ URL_PART_PASSWORD
Definition: shlwapi.h:589
ASSOCSTR
Definition: shlwapi.h:885
LWSTDAPI StrRetToBSTR(_Inout_ STRRET *, _In_opt_ PCUITEMID_CHILD, _Outptr_ BSTR *)
LWSTDAPI SHCreateThreadRef(_Inout_ LONG *, _Outptr_ IUnknown **)
LWSTDAPI StrFormatByteSizeEx(ULONGLONG ull, SFBS_FLAGS flags, _Out_writes_(cchBuf) PWSTR pszBuf, _In_range_(>, 0) UINT cchBuf)
LWSTDAPI ParseURLW(_In_ LPCWSTR pszUrl, _Inout_ PARSEDURLW *ppu)
LWSTDAPI AssocQueryKeyW(_In_ ASSOCF, _In_ ASSOCKEY, _In_ LPCWSTR, _In_opt_ LPCWSTR, _Out_ PHKEY)
@ CTF_PROCESS_REF
Definition: shlwapi.h:73
@ CTF_NOADDREFLIB
Definition: shlwapi.h:92
@ CTF_INSIST
Definition: shlwapi.h:71
@ CTF_UNUSED
Definition: shlwapi.h:82
@ CTF_KEYBOARD_LOCALE
Definition: shlwapi.h:89
@ CTF_WAIT_ALLOWCOM
Definition: shlwapi.h:79
@ CTF_COINIT_STA
Definition: shlwapi.h:74
@ CTF_INHERITWOW64
Definition: shlwapi.h:83
@ CTF_OLEINITIALIZE
Definition: shlwapi.h:90
@ CTF_REF_COUNTED
Definition: shlwapi.h:78
@ CTF_COINIT_MTA
Definition: shlwapi.h:91
@ CTF_COINIT
Definition: shlwapi.h:75
@ CTF_THREAD_REF
Definition: shlwapi.h:72
@ CTF_FREELIBANDEXIT
Definition: shlwapi.h:77
LWSTDAPI UrlUnescapeW(_Inout_ LPWSTR, _Out_writes_to_opt_(*pcchUnescaped, *pcchUnescaped) LPWSTR, _Inout_opt_ LPDWORD pcchUnescaped, DWORD)
LWSTDAPI IUnknown_SetSite(_In_ IUnknown *punk, _In_opt_ IUnknown *punkSite)
@ ASSOCSTR_CONTENTTYPE
Definition: shlwapi.h:900
@ ASSOCSTR_SHELLEXTENSION
Definition: shlwapi.h:902
@ ASSOCSTR_TILEINFO
Definition: shlwapi.h:899
@ ASSOCSTR_SHELLNEWVALUE
Definition: shlwapi.h:891
@ ASSOCSTR_COMMAND
Definition: shlwapi.h:886
@ ASSOCSTR_DDEAPPLICATION
Definition: shlwapi.h:894
@ ASSOCSTR_DDECOMMAND
Definition: shlwapi.h:892
@ ASSOCSTR_FRIENDLYDOCNAME
Definition: shlwapi.h:888
@ ASSOCSTR_MAX
Definition: shlwapi.h:915
@ ASSOCSTR_NOOPEN
Definition: shlwapi.h:890
@ ASSOCSTR_DDETOPIC
Definition: shlwapi.h:895
@ ASSOCSTR_DDEIFEXEC
Definition: shlwapi.h:893
@ ASSOCSTR_INFOTIP
Definition: shlwapi.h:896
@ ASSOCSTR_FRIENDLYAPPNAME
Definition: shlwapi.h:889
@ ASSOCSTR_EXECUTABLE
Definition: shlwapi.h:887
@ ASSOCSTR_DEFAULTICON
Definition: shlwapi.h:901
@ ASSOCSTR_QUICKTIP
Definition: shlwapi.h:898
SHREGENUM_FLAGS
Definition: shlwapi.h:732
struct tagPARSEDURLW * PPARSEDURLW
@ SHREGENUM_HKCU
Definition: shlwapi.h:734
@ SHREGENUM_BOTH
Definition: shlwapi.h:736
@ SHREGENUM_DEFAULT
Definition: shlwapi.h:733
@ SHREGENUM_HKLM
Definition: shlwapi.h:735
LWSTDAPI StrRetToStrA(_Inout_ STRRET *, _In_opt_ PCUITEMID_CHILD, _Outptr_ LPSTR *)
LWSTDAPI SHReleaseThreadRef(void)
Definition: thread.c:279
LWSTDAPI SHCreateStreamOnFileEx(_In_ LPCWSTR, _In_ DWORD, _In_ DWORD, _In_ BOOL, _In_opt_ struct IStream *, _Outptr_ struct IStream **)
ASSOCKEY
Definition: shlwapi.h:918
@ ASSOCKEY_CLASS
Definition: shlwapi.h:921
@ ASSOCKEY_SHELLEXECCLASS
Definition: shlwapi.h:919
@ ASSOCKEY_MAX
Definition: shlwapi.h:923
@ ASSOCKEY_BASECLASS
Definition: shlwapi.h:922
@ ASSOCKEY_APP
Definition: shlwapi.h:920
LWSTDAPI IUnknown_GetSite(_In_ IUnknown *punk, _In_ REFIID riid, _Outptr_ void **ppv)
LWSTDAPI SHAutoComplete(_In_ HWND, DWORD)
LWSTDAPI AssocCreate(_In_ CLSID, _In_ REFIID, _Outptr_ LPVOID *)
LWSTDAPI IStream_Reset(_In_ struct IStream *)
LWSTDAPI UrlEscapeA(_In_ LPCSTR, _Out_writes_to_(*pcchEscaped, *pcchEscaped) LPSTR, _Inout_ LPDWORD pcchEscaped, DWORD)
LWSTDAPI SHStrDupW(_In_ LPCWSTR psz, _Outptr_ WCHAR **ppwsz)
LWSTDAPI SHCreateStreamOnFileA(_In_ LPCSTR, _In_ DWORD, _Outptr_ struct IStream **)
INT SRRF
Definition: shlwapi.h:717
LWSTDAPI ParseURLA(_In_ LPCSTR pszUrl, _Inout_ PARSEDURLA *ppu)
LWSTDAPI SHCreateStreamOnFileW(_In_ LPCWSTR, _In_ DWORD, _Outptr_ struct IStream **)
LWSTDAPI UrlCombineW(_In_ LPCWSTR, _In_ LPCWSTR, _Out_writes_to_opt_(*pcchCombined, *pcchCombined) LPWSTR, _Inout_ LPDWORD pcchCombined, DWORD)
HUSKEY * PHUSKEY
Definition: shlwapi.h:740
LWSTDAPI IStream_Size(_In_ IStream *pstm, _Out_ ULARGE_INTEGER *pui)
LWSTDAPI UrlCombineA(_In_ LPCSTR, _In_ LPCSTR, _Out_writes_to_opt_(*pcchCombined, *pcchCombined) LPSTR, _Inout_ LPDWORD pcchCombined, DWORD)
LWSTDAPI UrlCreateFromPathA(_In_ LPCSTR, _Out_writes_to_(*pcchUrl, *pcchUrl) LPSTR, _Inout_ LPDWORD pcchUrl, DWORD)
LWSTDAPI SHSetThreadRef(_In_opt_ IUnknown *)
LWSTDAPI AssocQueryKeyA(_In_ ASSOCF, _In_ ASSOCKEY, _In_ LPCSTR, _In_opt_ LPCSTR, _Out_ PHKEY)
struct IQueryAssociations * LPQUERYASSOCIATIONS
Definition: shlwapi.h:995
SHREGDEL_FLAGS
Definition: shlwapi.h:725
struct tagPARSEDURLA PARSEDURLA
LWSTDAPI PathCreateFromUrlW(_In_ LPCWSTR pszUrl, _Out_writes_to_(*pcchPath, *pcchPath) LPWSTR pszPath, _Inout_ LPDWORD pcchPath, DWORD dwFlags)
HANDLE HUSKEY
Definition: shlwapi.h:739
struct tagPARSEDURLW PARSEDURLW
LWSTDAPI AssocQueryStringW(_In_ ASSOCF, _In_ ASSOCSTR, _In_ LPCWSTR, _In_opt_ LPCWSTR, _Out_writes_opt_(*pcchOut) LPWSTR, _Inout_ LPDWORD pcchOut)
LWSTDAPI AssocQueryStringByKeyW(_In_ ASSOCF, _In_ ASSOCSTR, _In_ HKEY, _In_opt_ LPCWSTR, _Out_writes_opt_(*pcchOut) LPWSTR, _Inout_ LPDWORD pcchOut)
LWSTDAPI UrlUnescapeA(_Inout_ LPSTR, _Out_writes_to_opt_(*pcchUnescaped, *pcchUnescaped) LPSTR, _Inout_opt_ LPDWORD pcchUnescaped, DWORD)
LWSTDAPI StrRetToStrW(_Inout_ STRRET *, _In_opt_ PCUITEMID_CHILD, _Outptr_ LPWSTR *)
HRESULT(CALLBACK * DLLGETVERSIONPROC)(DLLVERSIONINFO *)
Definition: shlwapi.h:127
struct tagPARSEDURLA * PPARSEDURLA
DWORD ASSOCF
Definition: shlwapi.h:967
LWSTDAPI SHGetThreadRef(_Outptr_ IUnknown **)
LWSTDAPI UrlApplySchemeA(_In_ LPCSTR, _Out_writes_(*pcchOut) LPSTR, _Inout_ LPDWORD pcchOut, DWORD)
LWSTDAPI HashData(_In_reads_bytes_(cbData) const unsigned char *, DWORD cbData, _Out_writes_bytes_(cbHash) unsigned char *lpDest, DWORD cbHash)
ASSOCENUM
Definition: shlwapi.h:938
@ ASSOCENUM_NONE
Definition: shlwapi.h:939
LWSTDAPI StrRetToBufA(_Inout_ STRRET *, _In_opt_ PCUITEMID_CHILD, _Out_writes_(cchBuf) LPSTR, UINT cchBuf)
LWSTDAPI UrlCanonicalizeW(_In_ LPCWSTR, _Out_writes_to_(*pcchCanonicalized, *pcchCanonicalized) LPWSTR, _Inout_ LPDWORD pcchCanonicalized, DWORD)
LWSTDAPI StrRetToBufW(_Inout_ STRRET *, _In_opt_ PCUITEMID_CHILD, _Out_writes_(cchBuf) LPWSTR, UINT cchBuf)
LWSTDAPI UrlCanonicalizeA(_In_ LPCSTR, _Out_writes_to_(*pcchCanonicalized, *pcchCanonicalized) LPSTR, _Inout_ LPDWORD pcchCanonicalized, DWORD)
LWSTDAPI UrlCreateFromPathW(_In_ LPCWSTR, _Out_writes_to_(*pcchUrl, *pcchUrl) LPWSTR, _Inout_ LPDWORD pcchUrl, DWORD)
LWSTDAPI AssocQueryStringA(_In_ ASSOCF, _In_ ASSOCSTR, _In_ LPCSTR, _In_opt_ LPCSTR, _Out_writes_opt_(*pcchOut) LPSTR, _Inout_ LPDWORD pcchOut)
@ SHREGDEL_HKLM
Definition: shlwapi.h:728
@ SHREGDEL_BOTH
Definition: shlwapi.h:729
@ SHREGDEL_HKCU
Definition: shlwapi.h:727
@ SHREGDEL_DEFAULT
Definition: shlwapi.h:726
_In_opt_ void _In_ DWORD flags
Definition: shlwapi.h:66
LWSTDAPI UrlEscapeW(_In_ LPCWSTR, _Out_writes_to_(*pcchEscaped, *pcchEscaped) LPWSTR, _Inout_ LPDWORD pcchEscaped, DWORD)
LWSTDAPI PathCreateFromUrlA(_In_ LPCSTR, _Out_writes_to_(*pcchPath, *pcchPath) LPSTR, _Inout_ LPDWORD pcchPath, DWORD)
struct _DllVersionInfo DLLVERSIONINFO
LWSTDAPI AssocQueryStringByKeyA(_In_ ASSOCF, _In_ ASSOCSTR, _In_ HKEY, _In_opt_ LPCSTR, _Out_writes_opt_(*pcchOut) LPSTR, _Inout_ LPDWORD pcchOut)
LWSTDAPI SHStrDupA(_In_ LPCSTR psz, _Outptr_ WCHAR **ppwsz)
IStream *WINAPI SHOpenRegStreamW(HKEY hkey, LPCWSTR pszSubkey, LPCWSTR pszValue, DWORD dwMode)
Definition: regstream.c:624
IStream *WINAPI SHOpenRegStream2A(HKEY hKey, LPCSTR pszSubkey, LPCSTR pszValue, DWORD dwMode)
Definition: regstream.c:478
IStream *WINAPI SHOpenRegStreamA(HKEY hkey, LPCSTR pszSubkey, LPCSTR pszValue, DWORD dwMode)
Definition: regstream.c:608
IStream *WINAPI SHOpenRegStream2W(HKEY hKey, LPCWSTR pszSubkey, LPCWSTR pszValue, DWORD dwMode)
Definition: regstream.c:537
IStream *WINAPI SHCreateMemStream(const BYTE *lpbData, UINT dwDataLen)
Definition: regstream.c:652
const WCHAR * str
#define WINAPIV
Definition: sdbpapi.h:64
STDMETHOD() GetKey(THIS_ HKEY *phKey) PURE
STDMETHOD() GetString(THIS_ PWSTR *ppsz) PURE
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
Definition: shtypes.idl:42
Definition: shlwapi.h:139
ULONGLONG DECLSPEC_ALIGN(8) ullVersion
DLLVERSIONINFO info1
Definition: shlwapi.h:130
ULONGLONG ullVersion
Definition: shlwapi.h:132
DWORD dwMajorVersion
Definition: shlwapi.h:121
DWORD dwBuildNumber
Definition: shlwapi.h:123
DWORD dwMinorVersion
Definition: shlwapi.h:122
DWORD cbSize
Definition: shlwapi.h:120
DWORD dwPlatformID
Definition: shlwapi.h:124
Definition: scsiwmi.h:51
Definition: copy.c:22
UINT nScheme
Definition: shlwapi.h:612
UINT cchSuffix
Definition: shlwapi.h:611
LPCSTR pszSuffix
Definition: shlwapi.h:610
UINT cchProtocol
Definition: shlwapi.h:609
DWORD cbSize
Definition: shlwapi.h:607
LPCSTR pszProtocol
Definition: shlwapi.h:608
UINT cchProtocol
Definition: shlwapi.h:618
LPCWSTR pszSuffix
Definition: shlwapi.h:619
DWORD cbSize
Definition: shlwapi.h:616
UINT nScheme
Definition: shlwapi.h:621
UINT cchSuffix
Definition: shlwapi.h:620
LPCWSTR pszProtocol
Definition: shlwapi.h:617
const char * LPCSTR
Definition: typedefs.h:52
const uint16_t * PCWSTR
Definition: typedefs.h:57
const uint16_t * LPCWSTR
Definition: typedefs.h:57
unsigned char UCHAR
Definition: typedefs.h:53
unsigned char * LPBYTE
Definition: typedefs.h:53
uint16_t * LPWSTR
Definition: typedefs.h:56
int64_t LONGLONG
Definition: typedefs.h:68
uint16_t * LPWORD
Definition: typedefs.h:56
uint32_t * LPDWORD
Definition: typedefs.h:59
char * LPSTR
Definition: typedefs.h:51
int32_t INT
Definition: typedefs.h:58
uint64_t ULONGLONG
Definition: typedefs.h:67
uint32_t ULONG
Definition: typedefs.h:59
_In_ LONG _In_ HWND hwnd
Definition: winddi.h:4023
_In_ ULONG_PTR _In_ ULONG _Out_ ULONG_PTR * pid
Definition: winddi.h:3837
#define __ms_va_list
Definition: windef.h:250
DWORD COLORREF
Definition: windef.h:100
#define HRESULT
Definition: msvc.h:7
#define WINAPI
Definition: msvc.h:6
WINSHLWAPI BOOL WINAPI SHUnlockShared(void *data)
WINSHLWAPI BOOL WINAPI SHFreeShared(HANDLE handle, DWORD pid)
Definition: ordinal.c:315
HRESULT WINAPI DllInstall(BOOL, LPCWSTR)
Definition: shsvcs.c:18
WINSHLWAPI HRESULT WINAPI GetAcceptLanguagesA(char *buffer, DWORD *buff_len)
WINSHLWAPI BOOL WINAPI PathFileExistsAndAttributesA(LPCSTR, DWORD *)
Definition: path.c:1853
WINSHLWAPI LSTATUS WINAPI SHRegGetValueA(HKEY, LPCSTR, LPCSTR, SRRF, LPDWORD, LPVOID, LPDWORD)
WINSHLWAPI BOOL WINAPI PathFileExistsAndAttributesW(LPCWSTR, DWORD *)
Definition: path.c:1879
SFBS_FLAGS
Definition: shlwapi.h:869
WINSHLWAPI HRESULT WINAPI SHGetViewStatePropertyBag(PCIDLIST_ABSOLUTE pidl, PCWSTR bagname, DWORD flags, REFIID riid, void **ppv)
WINSHLWAPI BOOL WINAPI SHIsLowMemoryMachine(DWORD type)
Definition: ordinal.c:4667
WINSHLWAPI BOOL WINAPI IsOS(DWORD)
Definition: ordinal.c:4230
WINSHLWAPI HANDLE WINAPI SHAllocShared(const void *data, DWORD size, DWORD pid)
#define WINSHLWAPI
Definition: shlwapi.h:36
@ CTF_WAIT_NO_REENTRACY
Definition: shlwapi.h:1074
WINSHLWAPI HRESULT WINAPI GetAcceptLanguagesW(WCHAR *buffer, DWORD *buff_len)
Definition: main.c:529
DWORD ASSOCF
Definition: shlwapi.h:257
WINSHLWAPI void *WINAPI SHLockShared(HANDLE handle, DWORD pid)
Definition: ordinal.c:259
struct QITAB * LPQITAB
WINSHLWAPI int WINAPI SHFormatDateTimeW(const FILETIME *filetime, DWORD *flags, LPWSTR buffer, UINT size)
WINSHLWAPI LSTATUS WINAPI SHRegGetValueW(HKEY, LPCWSTR, LPCWSTR, SRRF, LPDWORD, LPVOID, LPDWORD)
WINSHLWAPI HRESULT WINAPI QISearch(void *base, const QITAB *pqit, REFIID riid, void **ppv)
Definition: main.c:426
WINSHLWAPI int WINAPI SHFormatDateTimeA(const FILETIME *filetime, DWORD *flags, LPSTR buffer, UINT size)
WINSHLWAPI UINT WINAPI WhichPlatform(void)
Definition: ordinal.c:3073
ACCESS_MASK REGSAM
Definition: winreg.h:76
unsigned char BYTE
Definition: xxhash.c:193