;--- include file created by h2incx v0.99.3, copyright 2005 japheth
;--- source file: d:\microsoft sdk\include\ShLwApi.h, last modified: 5/23/2001 19:38
ifndef _INC_SHLWAPI
_INC_SHLWAPI	EQU	<>
ifndef NOSHLWAPI
	include objbase.inc
	include shtypes.inc
ifndef _WINRESRC_
ifndef _WIN32_IE
_WIN32_IE	EQU	0501h
else 
if (_WIN32_IE lt 0400h) AND defined(_WIN32_WINNT) AND (_WIN32_WINNT ge 0500h)
;#error _WIN32_IE setting conflicts with _WIN32_WINNT setting 
endif 
endif 
endif 
ifdef UNIX
;IInternetSecurityMgrSite typedef IInternetSecurityMgrSite

;IInternetSecurityManager typedef IInternetSecurityManager

;IInternetHostSecurityManager typedef IInternetHostSecurityManager

endif 
ifndef WINSHLWAPI
if  NOT defined(_SHLWAPI_)
LWSTDAPI	EQU	<EXTERN_C DECLSPEC_IMPORT HRESULT STDAPICALLTYPE>
LWSTDAPI_ macro type
	exitm <EXTERN_C DECLSPEC_IMPORT type STDAPICALLTYPE >
	endm
LWSTDAPIV	EQU	<EXTERN_C DECLSPEC_IMPORT HRESULT STDAPIVCALLTYPE>
LWSTDAPIV_ macro type
	exitm <EXTERN_C DECLSPEC_IMPORT type STDAPIVCALLTYPE >
	endm
else 
LWSTDAPI	EQU	<STDAPI>
LWSTDAPI_ macro type
	exitm <STDAPI_ ( type ) >
	endm
LWSTDAPIV	EQU	<STDAPIV>
LWSTDAPIV_ macro type
	exitm <STDAPIV_ ( type ) >
	endm
endif 
endif 
ifdef _WIN32
	include pshpack8.inc
endif 
ifdef __cplusplus
;extern "C"
;{
endif 
ifndef NO_SHLWAPI_STRFCNS
proto_StrChrA typedef proto stdcall  :LPSTR, :WORD
externdef stdcall _imp__StrChrA@8: ptr proto_StrChrA
StrChrA equ <_imp__StrChrA@8>
proto_StrChrW typedef proto stdcall  :LPWSTR, :WCHAR
externdef stdcall _imp__StrChrW@8: ptr proto_StrChrW
StrChrW equ <_imp__StrChrW@8>
proto_StrChrIA typedef proto stdcall  :LPSTR, :WORD
externdef stdcall _imp__StrChrIA@8: ptr proto_StrChrIA
StrChrIA equ <_imp__StrChrIA@8>
proto_StrChrIW typedef proto stdcall  :LPWSTR, :WCHAR
externdef stdcall _imp__StrChrIW@8: ptr proto_StrChrIW
StrChrIW equ <_imp__StrChrIW@8>
proto_StrCmpNA typedef proto stdcall  :LPSTR, :LPSTR, :DWORD
externdef stdcall _imp__StrCmpNA@12: ptr proto_StrCmpNA
StrCmpNA equ <_imp__StrCmpNA@12>
proto_StrCmpNW typedef proto stdcall  :LPWSTR, :LPWSTR, :DWORD
externdef stdcall _imp__StrCmpNW@12: ptr proto_StrCmpNW
StrCmpNW equ <_imp__StrCmpNW@12>
proto_StrCmpNIA typedef proto stdcall  :LPSTR, :LPSTR, :DWORD
externdef stdcall _imp__StrCmpNIA@12: ptr proto_StrCmpNIA
StrCmpNIA equ <_imp__StrCmpNIA@12>
proto_StrCmpNIW typedef proto stdcall  :LPWSTR, :LPWSTR, :DWORD
externdef stdcall _imp__StrCmpNIW@12: ptr proto_StrCmpNIW
StrCmpNIW equ <_imp__StrCmpNIW@12>
proto_StrCSpnA typedef proto stdcall  :LPSTR, :LPSTR
externdef stdcall _imp__StrCSpnA@8: ptr proto_StrCSpnA
StrCSpnA equ <_imp__StrCSpnA@8>
proto_StrCSpnW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__StrCSpnW@8: ptr proto_StrCSpnW
StrCSpnW equ <_imp__StrCSpnW@8>
proto_StrCSpnIA typedef proto stdcall  :LPSTR, :LPSTR
externdef stdcall _imp__StrCSpnIA@8: ptr proto_StrCSpnIA
StrCSpnIA equ <_imp__StrCSpnIA@8>
proto_StrCSpnIW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__StrCSpnIW@8: ptr proto_StrCSpnIW
StrCSpnIW equ <_imp__StrCSpnIW@8>
proto_StrDupA typedef proto stdcall  :LPSTR
externdef stdcall _imp__StrDupA@4: ptr proto_StrDupA
StrDupA equ <_imp__StrDupA@4>
proto_StrDupW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__StrDupW@4: ptr proto_StrDupW
StrDupW equ <_imp__StrDupW@4>
proto_StrFormatByteSizeA typedef proto stdcall  :DWORD, :LPSTR, :DWORD
externdef stdcall _imp__StrFormatByteSizeA@12: ptr proto_StrFormatByteSizeA
StrFormatByteSizeA equ <_imp__StrFormatByteSizeA@12>
proto_StrFormatByteSize64A typedef proto stdcall  :QWORD, :LPSTR, :DWORD
externdef stdcall _imp__StrFormatByteSize64A@12: ptr proto_StrFormatByteSize64A
StrFormatByteSize64A equ <_imp__StrFormatByteSize64A@12>
proto_StrFormatByteSizeW typedef proto stdcall  :QWORD, :LPWSTR, :DWORD
externdef stdcall _imp__StrFormatByteSizeW@12: ptr proto_StrFormatByteSizeW
StrFormatByteSizeW equ <_imp__StrFormatByteSizeW@12>
proto_StrFormatKBSizeW typedef proto stdcall  :QWORD, :LPWSTR, :DWORD
externdef stdcall _imp__StrFormatKBSizeW@12: ptr proto_StrFormatKBSizeW
StrFormatKBSizeW equ <_imp__StrFormatKBSizeW@12>
proto_StrFormatKBSizeA typedef proto stdcall  :QWORD, :LPSTR, :DWORD
externdef stdcall _imp__StrFormatKBSizeA@12: ptr proto_StrFormatKBSizeA
StrFormatKBSizeA equ <_imp__StrFormatKBSizeA@12>
proto_StrFromTimeIntervalA typedef proto stdcall  :LPSTR, :DWORD, :DWORD, :DWORD
externdef stdcall _imp__StrFromTimeIntervalA@16: ptr proto_StrFromTimeIntervalA
StrFromTimeIntervalA equ <_imp__StrFromTimeIntervalA@16>
proto_StrFromTimeIntervalW typedef proto stdcall  :LPWSTR, :DWORD, :DWORD, :DWORD
externdef stdcall _imp__StrFromTimeIntervalW@16: ptr proto_StrFromTimeIntervalW
StrFromTimeIntervalW equ <_imp__StrFromTimeIntervalW@16>
proto_StrIsIntlEqualA typedef proto stdcall  :BOOL, :LPSTR, :LPSTR, :DWORD
externdef stdcall _imp__StrIsIntlEqualA@16: ptr proto_StrIsIntlEqualA
StrIsIntlEqualA equ <_imp__StrIsIntlEqualA@16>
proto_StrIsIntlEqualW typedef proto stdcall  :BOOL, :LPWSTR, :LPWSTR, :DWORD
externdef stdcall _imp__StrIsIntlEqualW@16: ptr proto_StrIsIntlEqualW
StrIsIntlEqualW equ <_imp__StrIsIntlEqualW@16>
proto_StrNCatA typedef proto stdcall  :LPSTR, :LPSTR, :DWORD
externdef stdcall _imp__StrNCatA@12: ptr proto_StrNCatA
StrNCatA equ <_imp__StrNCatA@12>
proto_StrNCatW typedef proto stdcall  :LPWSTR, :LPWSTR, :DWORD
externdef stdcall _imp__StrNCatW@12: ptr proto_StrNCatW
StrNCatW equ <_imp__StrNCatW@12>
proto_StrPBrkA typedef proto stdcall  :LPSTR, :LPSTR
externdef stdcall _imp__StrPBrkA@8: ptr proto_StrPBrkA
StrPBrkA equ <_imp__StrPBrkA@8>
proto_StrPBrkW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__StrPBrkW@8: ptr proto_StrPBrkW
StrPBrkW equ <_imp__StrPBrkW@8>
proto_StrRChrA typedef proto stdcall  :LPSTR, :LPSTR, :WORD
externdef stdcall _imp__StrRChrA@12: ptr proto_StrRChrA
StrRChrA equ <_imp__StrRChrA@12>
proto_StrRChrW typedef proto stdcall  :LPWSTR, :LPWSTR, :WCHAR
externdef stdcall _imp__StrRChrW@12: ptr proto_StrRChrW
StrRChrW equ <_imp__StrRChrW@12>
proto_StrRChrIA typedef proto stdcall  :LPSTR, :LPSTR, :WORD
externdef stdcall _imp__StrRChrIA@12: ptr proto_StrRChrIA
StrRChrIA equ <_imp__StrRChrIA@12>
proto_StrRChrIW typedef proto stdcall  :LPWSTR, :LPWSTR, :WCHAR
externdef stdcall _imp__StrRChrIW@12: ptr proto_StrRChrIW
StrRChrIW equ <_imp__StrRChrIW@12>
proto_StrRStrIA typedef proto stdcall  :LPSTR, :LPSTR, :LPSTR
externdef stdcall _imp__StrRStrIA@12: ptr proto_StrRStrIA
StrRStrIA equ <_imp__StrRStrIA@12>
proto_StrRStrIW typedef proto stdcall  :LPWSTR, :LPWSTR, :LPWSTR
externdef stdcall _imp__StrRStrIW@12: ptr proto_StrRStrIW
StrRStrIW equ <_imp__StrRStrIW@12>
proto_StrSpnA typedef proto stdcall  :LPSTR, :LPSTR
externdef stdcall _imp__StrSpnA@8: ptr proto_StrSpnA
StrSpnA equ <_imp__StrSpnA@8>
proto_StrSpnW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__StrSpnW@8: ptr proto_StrSpnW
StrSpnW equ <_imp__StrSpnW@8>
proto_StrStrA typedef proto stdcall  :LPSTR, :LPSTR
externdef stdcall _imp__StrStrA@8: ptr proto_StrStrA
StrStrA equ <_imp__StrStrA@8>
proto_StrStrW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__StrStrW@8: ptr proto_StrStrW
StrStrW equ <_imp__StrStrW@8>
proto_StrStrIA typedef proto stdcall  :LPSTR, :LPSTR
externdef stdcall _imp__StrStrIA@8: ptr proto_StrStrIA
StrStrIA equ <_imp__StrStrIA@8>
proto_StrStrIW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__StrStrIW@8: ptr proto_StrStrIW
StrStrIW equ <_imp__StrStrIW@8>
proto_StrToIntA typedef proto stdcall  :LPSTR
externdef stdcall _imp__StrToIntA@4: ptr proto_StrToIntA
StrToIntA equ <_imp__StrToIntA@4>
proto_StrToIntW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__StrToIntW@4: ptr proto_StrToIntW
StrToIntW equ <_imp__StrToIntW@4>
proto_StrToIntExA typedef proto stdcall  :LPSTR, :DWORD, :ptr DWORD
externdef stdcall _imp__StrToIntExA@12: ptr proto_StrToIntExA
StrToIntExA equ <_imp__StrToIntExA@12>
proto_StrToIntExW typedef proto stdcall  :LPWSTR, :DWORD, :ptr DWORD
externdef stdcall _imp__StrToIntExW@12: ptr proto_StrToIntExW
StrToIntExW equ <_imp__StrToIntExW@12>
if (_WIN32_IE ge 0600h)
proto_StrToInt64ExA typedef proto stdcall  :LPSTR, :DWORD, :ptr QWORD
externdef stdcall _imp__StrToInt64ExA@12: ptr proto_StrToInt64ExA
StrToInt64ExA equ <_imp__StrToInt64ExA@12>
proto_StrToInt64ExW typedef proto stdcall  :LPWSTR, :DWORD, :ptr QWORD
externdef stdcall _imp__StrToInt64ExW@12: ptr proto_StrToInt64ExW
StrToInt64ExW equ <_imp__StrToInt64ExW@12>
endif 
proto_StrTrimA typedef proto stdcall  :LPSTR, :LPSTR
externdef stdcall _imp__StrTrimA@8: ptr proto_StrTrimA
StrTrimA equ <_imp__StrTrimA@8>
proto_StrTrimW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__StrTrimW@8: ptr proto_StrTrimW
StrTrimW equ <_imp__StrTrimW@8>
proto_StrCatW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__StrCatW@8: ptr proto_StrCatW
StrCatW equ <_imp__StrCatW@8>
proto_StrCmpW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__StrCmpW@8: ptr proto_StrCmpW
StrCmpW equ <_imp__StrCmpW@8>
proto_StrCmpIW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__StrCmpIW@8: ptr proto_StrCmpIW
StrCmpIW equ <_imp__StrCmpIW@8>
proto_StrCpyW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__StrCpyW@8: ptr proto_StrCpyW
StrCpyW equ <_imp__StrCpyW@8>
proto_StrCpyNW typedef proto stdcall  :LPWSTR, :LPWSTR, :DWORD
externdef stdcall _imp__StrCpyNW@12: ptr proto_StrCpyNW
StrCpyNW equ <_imp__StrCpyNW@12>
proto_StrCatBuffW typedef proto stdcall  :LPWSTR, :LPWSTR, :DWORD
externdef stdcall _imp__StrCatBuffW@12: ptr proto_StrCatBuffW
StrCatBuffW equ <_imp__StrCatBuffW@12>
proto_StrCatBuffA typedef proto stdcall  :LPSTR, :LPSTR, :DWORD
externdef stdcall _imp__StrCatBuffA@12: ptr proto_StrCatBuffA
StrCatBuffA equ <_imp__StrCatBuffA@12>
proto_ChrCmpIA typedef proto stdcall  :WORD, :WORD
externdef stdcall _imp__ChrCmpIA@8: ptr proto_ChrCmpIA
ChrCmpIA equ <_imp__ChrCmpIA@8>
proto_ChrCmpIW typedef proto stdcall  :WCHAR, :WCHAR
externdef stdcall _imp__ChrCmpIW@8: ptr proto_ChrCmpIW
ChrCmpIW equ <_imp__ChrCmpIW@8>
proto_wvnsprintfA typedef proto stdcall  :LPSTR, :DWORD, :LPSTR, :va_list
externdef stdcall _imp__wvnsprintfA@16: ptr proto_wvnsprintfA
wvnsprintfA equ <_imp__wvnsprintfA@16>
proto_wvnsprintfW typedef proto stdcall  :LPWSTR, :DWORD, :LPWSTR, :va_list
externdef stdcall _imp__wvnsprintfW@16: ptr proto_wvnsprintfW
wvnsprintfW equ <_imp__wvnsprintfW@16>
proto_wnsprintfA typedef proto c  :LPSTR, :DWORD, :LPSTR, :VARARG
externdef stdcall _imp__wnsprintfA: ptr proto_wnsprintfA
wnsprintfA equ <_imp__wnsprintfA>
proto_wnsprintfW typedef proto c  :LPWSTR, :DWORD, :LPWSTR, :VARARG
externdef stdcall _imp__wnsprintfW: ptr proto_wnsprintfW
wnsprintfW equ <_imp__wnsprintfW>
StrIntlEqNA macro s1,s2,nChar
	exitm <StrIsIntlEqualA ( TRUE , s1 , s2 , nChar ) >
	endm
StrIntlEqNW macro s1,s2,nChar
	exitm <StrIsIntlEqualW ( TRUE , s1 , s2 , nChar ) >
	endm
StrIntlEqNIA macro s1,s2,nChar
	exitm <StrIsIntlEqualA ( FALSE , s1 , s2 , nChar ) >
	endm
StrIntlEqNIW macro s1,s2,nChar
	exitm <StrIsIntlEqualW ( FALSE , s1 , s2 , nChar ) >
	endm
proto_StrRetToStrA typedef proto stdcall  :ptr STRRET, :LPCITEMIDLIST, :ptr LPSTR
externdef stdcall _imp__StrRetToStrA@12: ptr proto_StrRetToStrA
StrRetToStrA equ <_imp__StrRetToStrA@12>
proto_StrRetToStrW typedef proto stdcall  :ptr STRRET, :LPCITEMIDLIST, :ptr LPWSTR
externdef stdcall _imp__StrRetToStrW@12: ptr proto_StrRetToStrW
StrRetToStrW equ <_imp__StrRetToStrW@12>
ifdef UNICODE
StrRetToStr	EQU	<StrRetToStrW>
else 
StrRetToStr	EQU	<StrRetToStrA>
endif 
proto_StrRetToBufA typedef proto stdcall  :ptr STRRET, :LPCITEMIDLIST, :LPSTR, :DWORD
externdef stdcall _imp__StrRetToBufA@16: ptr proto_StrRetToBufA
StrRetToBufA equ <_imp__StrRetToBufA@16>
proto_StrRetToBufW typedef proto stdcall  :ptr STRRET, :LPCITEMIDLIST, :LPWSTR, :DWORD
externdef stdcall _imp__StrRetToBufW@16: ptr proto_StrRetToBufW
StrRetToBufW equ <_imp__StrRetToBufW@16>
ifdef UNICODE
StrRetToBuf	EQU	<StrRetToBufW>
else 
StrRetToBuf	EQU	<StrRetToBufA>
endif 
proto_StrRetToBSTR typedef proto stdcall  :ptr STRRET, :LPCITEMIDLIST, :ptr BSTR
externdef stdcall _imp__StrRetToBSTR@12: ptr proto_StrRetToBSTR
StrRetToBSTR equ <_imp__StrRetToBSTR@12>
proto_SHStrDupA typedef proto stdcall  :LPSTR, :ptr ptr WCHAR
externdef stdcall _imp__SHStrDupA@8: ptr proto_SHStrDupA
SHStrDupA equ <_imp__SHStrDupA@8>
proto_SHStrDupW typedef proto stdcall  :LPWSTR, :ptr ptr WCHAR
externdef stdcall _imp__SHStrDupW@8: ptr proto_SHStrDupW
SHStrDupW equ <_imp__SHStrDupW@8>
ifdef UNICODE
SHStrDup	EQU	<SHStrDupW>
else 
SHStrDup	EQU	<SHStrDupA>
endif 
proto_StrCmpLogicalW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__StrCmpLogicalW@8: ptr proto_StrCmpLogicalW
StrCmpLogicalW equ <_imp__StrCmpLogicalW@8>
proto_StrCatChainW typedef proto stdcall  :LPWSTR, :DWORD, :DWORD, :LPWSTR
externdef stdcall _imp__StrCatChainW@16: ptr proto_StrCatChainW
StrCatChainW equ <_imp__StrCatChainW@16>
proto_SHLoadIndirectString typedef proto stdcall  :LPWSTR, :LPWSTR, :DWORD, :ptr ptr 
externdef stdcall _imp__SHLoadIndirectString@16: ptr proto_SHLoadIndirectString
SHLoadIndirectString equ <_imp__SHLoadIndirectString@16>
ifdef UNICODE
StrChr	EQU	<StrChrW>
StrRChr	EQU	<StrRChrW>
StrChrI	EQU	<StrChrIW>
StrRChrI	EQU	<StrRChrIW>
StrCmpN	EQU	<StrCmpNW>
StrCmpNI	EQU	<StrCmpNIW>
StrStr	EQU	<StrStrW>
StrStrI	EQU	<StrStrIW>
StrDup	EQU	<StrDupW>
StrRStrI	EQU	<StrRStrIW>
StrCSpn	EQU	<StrCSpnW>
StrCSpnI	EQU	<StrCSpnIW>
StrSpn	EQU	<StrSpnW>
StrToInt	EQU	<StrToIntW>
StrPBrk	EQU	<StrPBrkW>
StrToIntEx	EQU	<StrToIntExW>
if (_WIN32_IE ge 0600h)
StrToInt64Ex	EQU	<StrToInt64ExW>
endif 
StrFromTimeInterval	EQU	<StrFromTimeIntervalW>
StrIntlEqN	EQU	<StrIntlEqNW>
StrIntlEqNI	EQU	<StrIntlEqNIW>
StrFormatByteSize	EQU	<StrFormatByteSizeW>
StrFormatByteSize64	EQU	<StrFormatByteSizeW>
StrFormatKBSize	EQU	<StrFormatKBSizeW>
StrNCat	EQU	<StrNCatW>
StrTrim	EQU	<StrTrimW>
StrCatBuff	EQU	<StrCatBuffW>
ChrCmpI	EQU	<ChrCmpIW>
wvnsprintf	EQU	<wvnsprintfW>
wnsprintf	EQU	<wnsprintfW>
StrIsIntlEqual	EQU	<StrIsIntlEqualW>
else 
StrChr	EQU	<StrChrA>
StrRChr	EQU	<StrRChrA>
StrChrI	EQU	<StrChrIA>
StrRChrI	EQU	<StrRChrIA>
StrCmpN	EQU	<StrCmpNA>
StrCmpNI	EQU	<StrCmpNIA>
StrStr	EQU	<StrStrA>
StrStrI	EQU	<StrStrIA>
StrDup	EQU	<StrDupA>
StrRStrI	EQU	<StrRStrIA>
StrCSpn	EQU	<StrCSpnA>
StrCSpnI	EQU	<StrCSpnIA>
StrSpn	EQU	<StrSpnA>
StrToInt	EQU	<StrToIntA>
StrPBrk	EQU	<StrPBrkA>
StrToIntEx	EQU	<StrToIntExA>
if (_WIN32_IE ge 0600h)
StrToInt64Ex	EQU	<StrToInt64ExA>
endif 
StrFromTimeInterval	EQU	<StrFromTimeIntervalA>
StrIntlEqN	EQU	<StrIntlEqNA>
StrIntlEqNI	EQU	<StrIntlEqNIA>
StrFormatByteSize	EQU	<StrFormatByteSizeA>
StrFormatByteSize64	EQU	<StrFormatByteSize64A>
StrFormatKBSize	EQU	<StrFormatKBSizeA>
StrNCat	EQU	<StrNCatA>
StrTrim	EQU	<StrTrimA>
StrCatBuff	EQU	<StrCatBuffA>
ChrCmpI	EQU	<ChrCmpIA>
wvnsprintf	EQU	<wvnsprintfA>
wnsprintf	EQU	<wnsprintfA>
StrIsIntlEqual	EQU	<StrIsIntlEqualA>
endif 
proto_IntlStrEqWorkerA typedef proto stdcall  :BOOL, :LPSTR, :LPSTR, :DWORD
externdef stdcall _imp__IntlStrEqWorkerA@16: ptr proto_IntlStrEqWorkerA
IntlStrEqWorkerA equ <_imp__IntlStrEqWorkerA@16>
proto_IntlStrEqWorkerW typedef proto stdcall  :BOOL, :LPWSTR, :LPWSTR, :DWORD
externdef stdcall _imp__IntlStrEqWorkerW@16: ptr proto_IntlStrEqWorkerW
IntlStrEqWorkerW equ <_imp__IntlStrEqWorkerW@16>
IntlStrEqNA macro s1,s2,nChar
	exitm <IntlStrEqWorkerA ( TRUE , s1 , s2 , nChar ) >
	endm
IntlStrEqNW macro s1,s2,nChar
	exitm <IntlStrEqWorkerW ( TRUE , s1 , s2 , nChar ) >
	endm
IntlStrEqNIA macro s1,s2,nChar
	exitm <IntlStrEqWorkerA ( FALSE , s1 , s2 , nChar ) >
	endm
IntlStrEqNIW macro s1,s2,nChar
	exitm <IntlStrEqWorkerW ( FALSE , s1 , s2 , nChar ) >
	endm
ifdef UNICODE
IntlStrEqN	EQU	<IntlStrEqNW>
IntlStrEqNI	EQU	<IntlStrEqNIW>
else 
IntlStrEqN	EQU	<IntlStrEqNA>
IntlStrEqNI	EQU	<IntlStrEqNIA>
endif 
SZ_CONTENTTYPE_HTMLA	EQU	<"text/html">
SZ_CONTENTTYPE_HTMLW	EQU	<L("text/html")>
SZ_CONTENTTYPE_CDFA	EQU	<"application/x-cdf">
SZ_CONTENTTYPE_CDFW	EQU	<L("application/x-cdf")>
ifdef UNICODE
SZ_CONTENTTYPE_HTML	EQU	<SZ_CONTENTTYPE_HTMLW>
SZ_CONTENTTYPE_CDF	EQU	<SZ_CONTENTTYPE_CDFW>
else 
SZ_CONTENTTYPE_HTML	EQU	<SZ_CONTENTTYPE_HTMLA>
SZ_CONTENTTYPE_CDF	EQU	<SZ_CONTENTTYPE_CDFA>
endif 
PathIsHTMLFileA macro pszPath
	exitm <PathIsContentTypeA ( pszPath , SZ_CONTENTTYPE_HTMLA ) >
	endm
PathIsHTMLFileW macro pszPath
	exitm <PathIsContentTypeW ( pszPath , SZ_CONTENTTYPE_HTMLW ) >
	endm
STIF_DEFAULT	EQU	00000000h
STIF_SUPPORT_HEX	EQU	00000001h
StrCatA	EQU	<lstrcatA>
StrCmpA	EQU	<lstrcmpA>
StrCmpIA	EQU	<lstrcmpiA>
StrCpyA	EQU	<lstrcpyA>
StrCpyNA	EQU	<lstrcpynA>
StrToLong	EQU	<StrToInt>
StrNCmp	EQU	<StrCmpN>
StrNCmpI	EQU	<StrCmpNI>
StrNCpy	EQU	<StrCpyN>
StrCatN	EQU	<StrNCat>
ifdef UNICODE
StrCat	EQU	<StrCatW>
StrCmp	EQU	<StrCmpW>
StrCmpI	EQU	<StrCmpIW>
StrCpy	EQU	<StrCpyW>
StrCpyN	EQU	<StrCpyNW>
StrCatBuff	EQU	<StrCatBuffW>
else 
StrCat	EQU	<lstrcatA>
StrCmp	EQU	<lstrcmpA>
StrCmpI	EQU	<lstrcmpiA>
StrCpy	EQU	<lstrcpyA>
StrCpyN	EQU	<lstrcpynA>
StrCatBuff	EQU	<StrCatBuffA>
endif 
endif 
ifndef NO_SHLWAPI_PATH
proto_PathAddBackslashA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathAddBackslashA@4: ptr proto_PathAddBackslashA
PathAddBackslashA equ <_imp__PathAddBackslashA@4>
proto_PathAddBackslashW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathAddBackslashW@4: ptr proto_PathAddBackslashW
PathAddBackslashW equ <_imp__PathAddBackslashW@4>
ifdef UNICODE
PathAddBackslash	EQU	<PathAddBackslashW>
else 
PathAddBackslash	EQU	<PathAddBackslashA>
endif 
proto_PathAddExtensionA typedef proto stdcall  :LPSTR, :LPSTR
externdef stdcall _imp__PathAddExtensionA@8: ptr proto_PathAddExtensionA
PathAddExtensionA equ <_imp__PathAddExtensionA@8>
proto_PathAddExtensionW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__PathAddExtensionW@8: ptr proto_PathAddExtensionW
PathAddExtensionW equ <_imp__PathAddExtensionW@8>
ifdef UNICODE
PathAddExtension	EQU	<PathAddExtensionW>
else 
PathAddExtension	EQU	<PathAddExtensionA>
endif 
proto_PathAppendA typedef proto stdcall  :LPSTR, :LPSTR
externdef stdcall _imp__PathAppendA@8: ptr proto_PathAppendA
PathAppendA equ <_imp__PathAppendA@8>
proto_PathAppendW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__PathAppendW@8: ptr proto_PathAppendW
PathAppendW equ <_imp__PathAppendW@8>
proto_PathBuildRootA typedef proto stdcall  :LPSTR, :DWORD
externdef stdcall _imp__PathBuildRootA@8: ptr proto_PathBuildRootA
PathBuildRootA equ <_imp__PathBuildRootA@8>
proto_PathBuildRootW typedef proto stdcall  :LPWSTR, :DWORD
externdef stdcall _imp__PathBuildRootW@8: ptr proto_PathBuildRootW
PathBuildRootW equ <_imp__PathBuildRootW@8>
ifdef UNICODE
PathBuildRoot	EQU	<PathBuildRootW>
else 
PathBuildRoot	EQU	<PathBuildRootA>
endif 
proto_PathCanonicalizeA typedef proto stdcall  :LPSTR, :LPSTR
externdef stdcall _imp__PathCanonicalizeA@8: ptr proto_PathCanonicalizeA
PathCanonicalizeA equ <_imp__PathCanonicalizeA@8>
proto_PathCanonicalizeW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__PathCanonicalizeW@8: ptr proto_PathCanonicalizeW
PathCanonicalizeW equ <_imp__PathCanonicalizeW@8>
proto_PathCombineA typedef proto stdcall  :LPSTR, :LPSTR, :LPSTR
externdef stdcall _imp__PathCombineA@12: ptr proto_PathCombineA
PathCombineA equ <_imp__PathCombineA@12>
proto_PathCombineW typedef proto stdcall  :LPWSTR, :LPWSTR, :LPWSTR
externdef stdcall _imp__PathCombineW@12: ptr proto_PathCombineW
PathCombineW equ <_imp__PathCombineW@12>
ifdef UNICODE
PathCombine	EQU	<PathCombineW>
else 
PathCombine	EQU	<PathCombineA>
endif 
proto_PathCompactPathA typedef proto stdcall  :HDC, :LPSTR, :DWORD
externdef stdcall _imp__PathCompactPathA@12: ptr proto_PathCompactPathA
PathCompactPathA equ <_imp__PathCompactPathA@12>
proto_PathCompactPathW typedef proto stdcall  :HDC, :LPWSTR, :DWORD
externdef stdcall _imp__PathCompactPathW@12: ptr proto_PathCompactPathW
PathCompactPathW equ <_imp__PathCompactPathW@12>
proto_PathCompactPathExA typedef proto stdcall  :LPSTR, :LPSTR, :DWORD, :DWORD
externdef stdcall _imp__PathCompactPathExA@16: ptr proto_PathCompactPathExA
PathCompactPathExA equ <_imp__PathCompactPathExA@16>
proto_PathCompactPathExW typedef proto stdcall  :LPWSTR, :LPWSTR, :DWORD, :DWORD
externdef stdcall _imp__PathCompactPathExW@16: ptr proto_PathCompactPathExW
PathCompactPathExW equ <_imp__PathCompactPathExW@16>
proto_PathCommonPrefixA typedef proto stdcall  :LPSTR, :LPSTR, :LPSTR
externdef stdcall _imp__PathCommonPrefixA@12: ptr proto_PathCommonPrefixA
PathCommonPrefixA equ <_imp__PathCommonPrefixA@12>
proto_PathCommonPrefixW typedef proto stdcall  :LPWSTR, :LPWSTR, :LPWSTR
externdef stdcall _imp__PathCommonPrefixW@12: ptr proto_PathCommonPrefixW
PathCommonPrefixW equ <_imp__PathCommonPrefixW@12>
proto_PathFileExistsA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathFileExistsA@4: ptr proto_PathFileExistsA
PathFileExistsA equ <_imp__PathFileExistsA@4>
proto_PathFileExistsW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathFileExistsW@4: ptr proto_PathFileExistsW
PathFileExistsW equ <_imp__PathFileExistsW@4>
ifdef UNICODE
PathFileExists	EQU	<PathFileExistsW>
else 
PathFileExists	EQU	<PathFileExistsA>
endif 
proto_PathFindExtensionA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathFindExtensionA@4: ptr proto_PathFindExtensionA
PathFindExtensionA equ <_imp__PathFindExtensionA@4>
proto_PathFindExtensionW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathFindExtensionW@4: ptr proto_PathFindExtensionW
PathFindExtensionW equ <_imp__PathFindExtensionW@4>
ifdef UNICODE
PathFindExtension	EQU	<PathFindExtensionW>
else 
PathFindExtension	EQU	<PathFindExtensionA>
endif 
proto_PathFindFileNameA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathFindFileNameA@4: ptr proto_PathFindFileNameA
PathFindFileNameA equ <_imp__PathFindFileNameA@4>
proto_PathFindFileNameW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathFindFileNameW@4: ptr proto_PathFindFileNameW
PathFindFileNameW equ <_imp__PathFindFileNameW@4>
ifdef UNICODE
PathFindFileName	EQU	<PathFindFileNameW>
else 
PathFindFileName	EQU	<PathFindFileNameA>
endif 
proto_PathFindNextComponentA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathFindNextComponentA@4: ptr proto_PathFindNextComponentA
PathFindNextComponentA equ <_imp__PathFindNextComponentA@4>
proto_PathFindNextComponentW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathFindNextComponentW@4: ptr proto_PathFindNextComponentW
PathFindNextComponentW equ <_imp__PathFindNextComponentW@4>
ifdef UNICODE
PathFindNextComponent	EQU	<PathFindNextComponentW>
else 
PathFindNextComponent	EQU	<PathFindNextComponentA>
endif 
proto_PathFindOnPathA typedef proto stdcall  :LPSTR, :ptr LPSTR
externdef stdcall _imp__PathFindOnPathA@8: ptr proto_PathFindOnPathA
PathFindOnPathA equ <_imp__PathFindOnPathA@8>
proto_PathFindOnPathW typedef proto stdcall  :LPWSTR, :ptr LPWSTR
externdef stdcall _imp__PathFindOnPathW@8: ptr proto_PathFindOnPathW
PathFindOnPathW equ <_imp__PathFindOnPathW@8>
proto_PathGetArgsA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathGetArgsA@4: ptr proto_PathGetArgsA
PathGetArgsA equ <_imp__PathGetArgsA@4>
proto_PathGetArgsW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathGetArgsW@4: ptr proto_PathGetArgsW
PathGetArgsW equ <_imp__PathGetArgsW@4>
ifdef UNICODE
PathGetArgs	EQU	<PathGetArgsW>
else 
PathGetArgs	EQU	<PathGetArgsA>
endif 
proto_PathFindSuffixArrayA typedef proto stdcall  :LPSTR, :ptr LPSTR, :DWORD
externdef stdcall _imp__PathFindSuffixArrayA@12: ptr proto_PathFindSuffixArrayA
PathFindSuffixArrayA equ <_imp__PathFindSuffixArrayA@12>
proto_PathFindSuffixArrayW typedef proto stdcall  :LPWSTR, :ptr LPWSTR, :DWORD
externdef stdcall _imp__PathFindSuffixArrayW@12: ptr proto_PathFindSuffixArrayW
PathFindSuffixArrayW equ <_imp__PathFindSuffixArrayW@12>
ifdef UNICODE
PathFindSuffixArray	EQU	<PathFindSuffixArrayW>
else 
PathFindSuffixArray	EQU	<PathFindSuffixArrayA>
endif 
proto_PathIsLFNFileSpecA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathIsLFNFileSpecA@4: ptr proto_PathIsLFNFileSpecA
PathIsLFNFileSpecA equ <_imp__PathIsLFNFileSpecA@4>
proto_PathIsLFNFileSpecW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathIsLFNFileSpecW@4: ptr proto_PathIsLFNFileSpecW
PathIsLFNFileSpecW equ <_imp__PathIsLFNFileSpecW@4>
ifdef UNICODE
PathIsLFNFileSpec	EQU	<PathIsLFNFileSpecW>
else 
PathIsLFNFileSpec	EQU	<PathIsLFNFileSpecA>
endif 
proto_PathGetCharTypeA typedef proto stdcall  :BYTE
externdef stdcall _imp__PathGetCharTypeA@4: ptr proto_PathGetCharTypeA
PathGetCharTypeA equ <_imp__PathGetCharTypeA@4>
proto_PathGetCharTypeW typedef proto stdcall  :WCHAR
externdef stdcall _imp__PathGetCharTypeW@4: ptr proto_PathGetCharTypeW
PathGetCharTypeW equ <_imp__PathGetCharTypeW@4>
GCT_INVALID	EQU	0000h
GCT_LFNCHAR	EQU	0001h
GCT_SHORTCHAR	EQU	0002h
GCT_WILD	EQU	0004h
GCT_SEPARATOR	EQU	0008h
proto_PathGetDriveNumberA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathGetDriveNumberA@4: ptr proto_PathGetDriveNumberA
PathGetDriveNumberA equ <_imp__PathGetDriveNumberA@4>
proto_PathGetDriveNumberW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathGetDriveNumberW@4: ptr proto_PathGetDriveNumberW
PathGetDriveNumberW equ <_imp__PathGetDriveNumberW@4>
ifdef UNICODE
PathGetDriveNumber	EQU	<PathGetDriveNumberW>
else 
PathGetDriveNumber	EQU	<PathGetDriveNumberA>
endif 
proto_PathIsDirectoryA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathIsDirectoryA@4: ptr proto_PathIsDirectoryA
PathIsDirectoryA equ <_imp__PathIsDirectoryA@4>
proto_PathIsDirectoryW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathIsDirectoryW@4: ptr proto_PathIsDirectoryW
PathIsDirectoryW equ <_imp__PathIsDirectoryW@4>
ifdef UNICODE
PathIsDirectory	EQU	<PathIsDirectoryW>
else 
PathIsDirectory	EQU	<PathIsDirectoryA>
endif 
proto_PathIsDirectoryEmptyA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathIsDirectoryEmptyA@4: ptr proto_PathIsDirectoryEmptyA
PathIsDirectoryEmptyA equ <_imp__PathIsDirectoryEmptyA@4>
proto_PathIsDirectoryEmptyW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathIsDirectoryEmptyW@4: ptr proto_PathIsDirectoryEmptyW
PathIsDirectoryEmptyW equ <_imp__PathIsDirectoryEmptyW@4>
ifdef UNICODE
PathIsDirectoryEmpty	EQU	<PathIsDirectoryEmptyW>
else 
PathIsDirectoryEmpty	EQU	<PathIsDirectoryEmptyA>
endif 
proto_PathIsFileSpecA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathIsFileSpecA@4: ptr proto_PathIsFileSpecA
PathIsFileSpecA equ <_imp__PathIsFileSpecA@4>
proto_PathIsFileSpecW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathIsFileSpecW@4: ptr proto_PathIsFileSpecW
PathIsFileSpecW equ <_imp__PathIsFileSpecW@4>
ifdef UNICODE
PathIsFileSpec	EQU	<PathIsFileSpecW>
else 
PathIsFileSpec	EQU	<PathIsFileSpecA>
endif 
proto_PathIsPrefixA typedef proto stdcall  :LPSTR, :LPSTR
externdef stdcall _imp__PathIsPrefixA@8: ptr proto_PathIsPrefixA
PathIsPrefixA equ <_imp__PathIsPrefixA@8>
proto_PathIsPrefixW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__PathIsPrefixW@8: ptr proto_PathIsPrefixW
PathIsPrefixW equ <_imp__PathIsPrefixW@8>
ifdef UNICODE
PathIsPrefix	EQU	<PathIsPrefixW>
else 
PathIsPrefix	EQU	<PathIsPrefixA>
endif 
proto_PathIsRelativeA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathIsRelativeA@4: ptr proto_PathIsRelativeA
PathIsRelativeA equ <_imp__PathIsRelativeA@4>
proto_PathIsRelativeW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathIsRelativeW@4: ptr proto_PathIsRelativeW
PathIsRelativeW equ <_imp__PathIsRelativeW@4>
ifdef UNICODE
PathIsRelative	EQU	<PathIsRelativeW>
else 
PathIsRelative	EQU	<PathIsRelativeA>
endif 
proto_PathIsRootA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathIsRootA@4: ptr proto_PathIsRootA
PathIsRootA equ <_imp__PathIsRootA@4>
proto_PathIsRootW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathIsRootW@4: ptr proto_PathIsRootW
PathIsRootW equ <_imp__PathIsRootW@4>
ifdef UNICODE
PathIsRoot	EQU	<PathIsRootW>
else 
PathIsRoot	EQU	<PathIsRootA>
endif 
proto_PathIsSameRootA typedef proto stdcall  :LPSTR, :LPSTR
externdef stdcall _imp__PathIsSameRootA@8: ptr proto_PathIsSameRootA
PathIsSameRootA equ <_imp__PathIsSameRootA@8>
proto_PathIsSameRootW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__PathIsSameRootW@8: ptr proto_PathIsSameRootW
PathIsSameRootW equ <_imp__PathIsSameRootW@8>
ifdef UNICODE
PathIsSameRoot	EQU	<PathIsSameRootW>
else 
PathIsSameRoot	EQU	<PathIsSameRootA>
endif 
proto_PathIsUNCA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathIsUNCA@4: ptr proto_PathIsUNCA
PathIsUNCA equ <_imp__PathIsUNCA@4>
proto_PathIsUNCW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathIsUNCW@4: ptr proto_PathIsUNCW
PathIsUNCW equ <_imp__PathIsUNCW@4>
ifdef UNICODE
PathIsUNC	EQU	<PathIsUNCW>
else 
PathIsUNC	EQU	<PathIsUNCA>
endif 
proto_PathIsNetworkPathA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathIsNetworkPathA@4: ptr proto_PathIsNetworkPathA
PathIsNetworkPathA equ <_imp__PathIsNetworkPathA@4>
proto_PathIsNetworkPathW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathIsNetworkPathW@4: ptr proto_PathIsNetworkPathW
PathIsNetworkPathW equ <_imp__PathIsNetworkPathW@4>
ifdef UNICODE
PathIsNetworkPath	EQU	<PathIsNetworkPathW>
else 
PathIsNetworkPath	EQU	<PathIsNetworkPathA>
endif 
proto_PathIsUNCServerA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathIsUNCServerA@4: ptr proto_PathIsUNCServerA
PathIsUNCServerA equ <_imp__PathIsUNCServerA@4>
proto_PathIsUNCServerW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathIsUNCServerW@4: ptr proto_PathIsUNCServerW
PathIsUNCServerW equ <_imp__PathIsUNCServerW@4>
ifdef UNICODE
PathIsUNCServer	EQU	<PathIsUNCServerW>
else 
PathIsUNCServer	EQU	<PathIsUNCServerA>
endif 
proto_PathIsUNCServerShareA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathIsUNCServerShareA@4: ptr proto_PathIsUNCServerShareA
PathIsUNCServerShareA equ <_imp__PathIsUNCServerShareA@4>
proto_PathIsUNCServerShareW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathIsUNCServerShareW@4: ptr proto_PathIsUNCServerShareW
PathIsUNCServerShareW equ <_imp__PathIsUNCServerShareW@4>
ifdef UNICODE
PathIsUNCServerShare	EQU	<PathIsUNCServerShareW>
else 
PathIsUNCServerShare	EQU	<PathIsUNCServerShareA>
endif 
proto_PathIsContentTypeA typedef proto stdcall  :LPSTR, :LPSTR
externdef stdcall _imp__PathIsContentTypeA@8: ptr proto_PathIsContentTypeA
PathIsContentTypeA equ <_imp__PathIsContentTypeA@8>
proto_PathIsContentTypeW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__PathIsContentTypeW@8: ptr proto_PathIsContentTypeW
PathIsContentTypeW equ <_imp__PathIsContentTypeW@8>
proto_PathIsURLA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathIsURLA@4: ptr proto_PathIsURLA
PathIsURLA equ <_imp__PathIsURLA@4>
proto_PathIsURLW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathIsURLW@4: ptr proto_PathIsURLW
PathIsURLW equ <_imp__PathIsURLW@4>
ifdef UNICODE
PathIsURL	EQU	<PathIsURLW>
else 
PathIsURL	EQU	<PathIsURLA>
endif 
proto_PathMakePrettyA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathMakePrettyA@4: ptr proto_PathMakePrettyA
PathMakePrettyA equ <_imp__PathMakePrettyA@4>
proto_PathMakePrettyW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathMakePrettyW@4: ptr proto_PathMakePrettyW
PathMakePrettyW equ <_imp__PathMakePrettyW@4>
proto_PathMatchSpecA typedef proto stdcall  :LPSTR, :LPSTR
externdef stdcall _imp__PathMatchSpecA@8: ptr proto_PathMatchSpecA
PathMatchSpecA equ <_imp__PathMatchSpecA@8>
proto_PathMatchSpecW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__PathMatchSpecW@8: ptr proto_PathMatchSpecW
PathMatchSpecW equ <_imp__PathMatchSpecW@8>
proto_PathParseIconLocationA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathParseIconLocationA@4: ptr proto_PathParseIconLocationA
PathParseIconLocationA equ <_imp__PathParseIconLocationA@4>
proto_PathParseIconLocationW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathParseIconLocationW@4: ptr proto_PathParseIconLocationW
PathParseIconLocationW equ <_imp__PathParseIconLocationW@4>
proto_PathQuoteSpacesA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathQuoteSpacesA@4: ptr proto_PathQuoteSpacesA
PathQuoteSpacesA equ <_imp__PathQuoteSpacesA@4>
proto_PathQuoteSpacesW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathQuoteSpacesW@4: ptr proto_PathQuoteSpacesW
PathQuoteSpacesW equ <_imp__PathQuoteSpacesW@4>
proto_PathRelativePathToA typedef proto stdcall  :LPSTR, :LPSTR, :DWORD, :LPSTR, :DWORD
externdef stdcall _imp__PathRelativePathToA@20: ptr proto_PathRelativePathToA
PathRelativePathToA equ <_imp__PathRelativePathToA@20>
proto_PathRelativePathToW typedef proto stdcall  :LPWSTR, :LPWSTR, :DWORD, :LPWSTR, :DWORD
externdef stdcall _imp__PathRelativePathToW@20: ptr proto_PathRelativePathToW
PathRelativePathToW equ <_imp__PathRelativePathToW@20>
proto_PathRemoveArgsA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathRemoveArgsA@4: ptr proto_PathRemoveArgsA
PathRemoveArgsA equ <_imp__PathRemoveArgsA@4>
proto_PathRemoveArgsW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathRemoveArgsW@4: ptr proto_PathRemoveArgsW
PathRemoveArgsW equ <_imp__PathRemoveArgsW@4>
proto_PathRemoveBackslashA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathRemoveBackslashA@4: ptr proto_PathRemoveBackslashA
PathRemoveBackslashA equ <_imp__PathRemoveBackslashA@4>
proto_PathRemoveBackslashW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathRemoveBackslashW@4: ptr proto_PathRemoveBackslashW
PathRemoveBackslashW equ <_imp__PathRemoveBackslashW@4>
ifdef UNICODE
PathRemoveBackslash	EQU	<PathRemoveBackslashW>
else 
PathRemoveBackslash	EQU	<PathRemoveBackslashA>
endif 
proto_PathRemoveBlanksA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathRemoveBlanksA@4: ptr proto_PathRemoveBlanksA
PathRemoveBlanksA equ <_imp__PathRemoveBlanksA@4>
proto_PathRemoveBlanksW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathRemoveBlanksW@4: ptr proto_PathRemoveBlanksW
PathRemoveBlanksW equ <_imp__PathRemoveBlanksW@4>
proto_PathRemoveExtensionA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathRemoveExtensionA@4: ptr proto_PathRemoveExtensionA
PathRemoveExtensionA equ <_imp__PathRemoveExtensionA@4>
proto_PathRemoveExtensionW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathRemoveExtensionW@4: ptr proto_PathRemoveExtensionW
PathRemoveExtensionW equ <_imp__PathRemoveExtensionW@4>
proto_PathRemoveFileSpecA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathRemoveFileSpecA@4: ptr proto_PathRemoveFileSpecA
PathRemoveFileSpecA equ <_imp__PathRemoveFileSpecA@4>
proto_PathRemoveFileSpecW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathRemoveFileSpecW@4: ptr proto_PathRemoveFileSpecW
PathRemoveFileSpecW equ <_imp__PathRemoveFileSpecW@4>
proto_PathRenameExtensionA typedef proto stdcall  :LPSTR, :LPSTR
externdef stdcall _imp__PathRenameExtensionA@8: ptr proto_PathRenameExtensionA
PathRenameExtensionA equ <_imp__PathRenameExtensionA@8>
proto_PathRenameExtensionW typedef proto stdcall  :LPWSTR, :LPWSTR
externdef stdcall _imp__PathRenameExtensionW@8: ptr proto_PathRenameExtensionW
PathRenameExtensionW equ <_imp__PathRenameExtensionW@8>
proto_PathSearchAndQualifyA typedef proto stdcall  :LPSTR, :LPSTR, :DWORD
externdef stdcall _imp__PathSearchAndQualifyA@12: ptr proto_PathSearchAndQualifyA
PathSearchAndQualifyA equ <_imp__PathSearchAndQualifyA@12>
proto_PathSearchAndQualifyW typedef proto stdcall  :LPWSTR, :LPWSTR, :DWORD
externdef stdcall _imp__PathSearchAndQualifyW@12: ptr proto_PathSearchAndQualifyW
PathSearchAndQualifyW equ <_imp__PathSearchAndQualifyW@12>
proto_PathSetDlgItemPathA typedef proto stdcall  :HWND, :DWORD, :LPSTR
externdef stdcall _imp__PathSetDlgItemPathA@12: ptr proto_PathSetDlgItemPathA
PathSetDlgItemPathA equ <_imp__PathSetDlgItemPathA@12>
proto_PathSetDlgItemPathW typedef proto stdcall  :HWND, :DWORD, :LPWSTR
externdef stdcall _imp__PathSetDlgItemPathW@12: ptr proto_PathSetDlgItemPathW
PathSetDlgItemPathW equ <_imp__PathSetDlgItemPathW@12>
proto_PathSkipRootA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathSkipRootA@4: ptr proto_PathSkipRootA
PathSkipRootA equ <_imp__PathSkipRootA@4>
proto_PathSkipRootW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathSkipRootW@4: ptr proto_PathSkipRootW
PathSkipRootW equ <_imp__PathSkipRootW@4>
ifdef UNICODE
PathSkipRoot	EQU	<PathSkipRootW>
else 
PathSkipRoot	EQU	<PathSkipRootA>
endif 
proto_PathStripPathA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathStripPathA@4: ptr proto_PathStripPathA
PathStripPathA equ <_imp__PathStripPathA@4>
proto_PathStripPathW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathStripPathW@4: ptr proto_PathStripPathW
PathStripPathW equ <_imp__PathStripPathW@4>
ifdef UNICODE
PathStripPath	EQU	<PathStripPathW>
else 
PathStripPath	EQU	<PathStripPathA>
endif 
proto_PathStripToRootA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathStripToRootA@4: ptr proto_PathStripToRootA
PathStripToRootA equ <_imp__PathStripToRootA@4>
proto_PathStripToRootW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathStripToRootW@4: ptr proto_PathStripToRootW
PathStripToRootW equ <_imp__PathStripToRootW@4>
ifdef UNICODE
PathStripToRoot	EQU	<PathStripToRootW>
else 
PathStripToRoot	EQU	<PathStripToRootA>
endif 
proto_PathUnquoteSpacesA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathUnquoteSpacesA@4: ptr proto_PathUnquoteSpacesA
PathUnquoteSpacesA equ <_imp__PathUnquoteSpacesA@4>
proto_PathUnquoteSpacesW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathUnquoteSpacesW@4: ptr proto_PathUnquoteSpacesW
PathUnquoteSpacesW equ <_imp__PathUnquoteSpacesW@4>
proto_PathMakeSystemFolderA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathMakeSystemFolderA@4: ptr proto_PathMakeSystemFolderA
PathMakeSystemFolderA equ <_imp__PathMakeSystemFolderA@4>
proto_PathMakeSystemFolderW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathMakeSystemFolderW@4: ptr proto_PathMakeSystemFolderW
PathMakeSystemFolderW equ <_imp__PathMakeSystemFolderW@4>
ifdef UNICODE
PathMakeSystemFolder	EQU	<PathMakeSystemFolderW>
else 
PathMakeSystemFolder	EQU	<PathMakeSystemFolderA>
endif 
proto_PathUnmakeSystemFolderA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathUnmakeSystemFolderA@4: ptr proto_PathUnmakeSystemFolderA
PathUnmakeSystemFolderA equ <_imp__PathUnmakeSystemFolderA@4>
proto_PathUnmakeSystemFolderW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathUnmakeSystemFolderW@4: ptr proto_PathUnmakeSystemFolderW
PathUnmakeSystemFolderW equ <_imp__PathUnmakeSystemFolderW@4>
ifdef UNICODE
PathUnmakeSystemFolder	EQU	<PathUnmakeSystemFolderW>
else 
PathUnmakeSystemFolder	EQU	<PathUnmakeSystemFolderA>
endif 
proto_PathIsSystemFolderA typedef proto stdcall  :LPSTR, :DWORD
externdef stdcall _imp__PathIsSystemFolderA@8: ptr proto_PathIsSystemFolderA
PathIsSystemFolderA equ <_imp__PathIsSystemFolderA@8>
proto_PathIsSystemFolderW typedef proto stdcall  :LPWSTR, :DWORD
externdef stdcall _imp__PathIsSystemFolderW@8: ptr proto_PathIsSystemFolderW
PathIsSystemFolderW equ <_imp__PathIsSystemFolderW@8>
ifdef UNICODE
PathIsSystemFolder	EQU	<PathIsSystemFolderW>
else 
PathIsSystemFolder	EQU	<PathIsSystemFolderA>
endif 
proto_PathUndecorateA typedef proto stdcall  :LPSTR
externdef stdcall _imp__PathUndecorateA@4: ptr proto_PathUndecorateA
PathUndecorateA equ <_imp__PathUndecorateA@4>
proto_PathUndecorateW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__PathUndecorateW@4: ptr proto_PathUndecorateW
PathUndecorateW equ <_imp__PathUndecorateW@4>
ifdef UNICODE
PathUndecorate	EQU	<PathUndecorateW>
else 
PathUndecorate	EQU	<PathUndecorateA>
endif 
proto_PathUnExpandEnvStringsA typedef proto stdcall  :LPSTR, :LPSTR, :DWORD
externdef stdcall _imp__PathUnExpandEnvStringsA@12: ptr proto_PathUnExpandEnvStringsA
PathUnExpandEnvStringsA equ <_imp__PathUnExpandEnvStringsA@12>
proto_PathUnExpandEnvStringsW typedef proto stdcall  :LPWSTR, :LPWSTR, :DWORD
externdef stdcall _imp__PathUnExpandEnvStringsW@12: ptr proto_PathUnExpandEnvStringsW
PathUnExpandEnvStringsW equ <_imp__PathUnExpandEnvStringsW@12>
ifdef UNICODE
PathUnExpandEnvStrings	EQU	<PathUnExpandEnvStringsW>
else 
PathUnExpandEnvStrings	EQU	<PathUnExpandEnvStringsA>
endif 
ifdef UNICODE
PathAppend	EQU	<PathAppendW>
PathCanonicalize	EQU	<PathCanonicalizeW>
PathCompactPath	EQU	<PathCompactPathW>
PathCompactPathEx	EQU	<PathCompactPathExW>
PathCommonPrefix	EQU	<PathCommonPrefixW>
PathFindOnPath	EQU	<PathFindOnPathW>
PathGetCharType	EQU	<PathGetCharTypeW>
PathIsContentType	EQU	<PathIsContentTypeW>
PathIsHTMLFile	EQU	<PathIsHTMLFileW>
PathMakePretty	EQU	<PathMakePrettyW>
PathMatchSpec	EQU	<PathMatchSpecW>
PathParseIconLocation	EQU	<PathParseIconLocationW>
PathQuoteSpaces	EQU	<PathQuoteSpacesW>
PathRelativePathTo	EQU	<PathRelativePathToW>
PathRemoveArgs	EQU	<PathRemoveArgsW>
PathRemoveBlanks	EQU	<PathRemoveBlanksW>
PathRemoveExtension	EQU	<PathRemoveExtensionW>
PathRemoveFileSpec	EQU	<PathRemoveFileSpecW>
PathRenameExtension	EQU	<PathRenameExtensionW>
PathSearchAndQualify	EQU	<PathSearchAndQualifyW>
PathSetDlgItemPath	EQU	<PathSetDlgItemPathW>
PathUnquoteSpaces	EQU	<PathUnquoteSpacesW>
else 
PathAppend	EQU	<PathAppendA>
PathCanonicalize	EQU	<PathCanonicalizeA>
PathCompactPath	EQU	<PathCompactPathA>
PathCompactPathEx	EQU	<PathCompactPathExA>
PathCommonPrefix	EQU	<PathCommonPrefixA>
PathFindOnPath	EQU	<PathFindOnPathA>
PathGetCharType	EQU	<PathGetCharTypeA>
PathIsContentType	EQU	<PathIsContentTypeA>
PathIsHTMLFile	EQU	<PathIsHTMLFileA>
PathMakePretty	EQU	<PathMakePrettyA>
PathMatchSpec	EQU	<PathMatchSpecA>
PathParseIconLocation	EQU	<PathParseIconLocationA>
PathQuoteSpaces	EQU	<PathQuoteSpacesA>
PathRelativePathTo	EQU	<PathRelativePathToA>
PathRemoveArgs	EQU	<PathRemoveArgsA>
PathRemoveBlanks	EQU	<PathRemoveBlanksA>
PathRemoveExtension	EQU	<PathRemoveExtensionA>
PathRemoveFileSpec	EQU	<PathRemoveFileSpecA>
PathRenameExtension	EQU	<PathRenameExtensionA>
PathSearchAndQualify	EQU	<PathSearchAndQualifyA>
PathSetDlgItemPath	EQU	<PathSetDlgItemPathA>
PathUnquoteSpaces	EQU	<PathUnquoteSpacesA>
endif 
URL_SCHEME typedef DWORD
URL_SCHEME_INVALID = - 1 
URL_SCHEME_UNKNOWN = 0 
URL_SCHEME_FTP = 1
URL_SCHEME_HTTP = 2
URL_SCHEME_GOPHER = 3
URL_SCHEME_MAILTO = 4
URL_SCHEME_NEWS = 5
URL_SCHEME_NNTP = 6
URL_SCHEME_TELNET = 7
URL_SCHEME_WAIS = 8
URL_SCHEME_FILE = 9
URL_SCHEME_MK = 10
URL_SCHEME_HTTPS = 11
URL_SCHEME_SHELL = 12
URL_SCHEME_SNEWS = 13
URL_SCHEME_LOCAL = 14
URL_SCHEME_JAVASCRIPT = 15
URL_SCHEME_VBSCRIPT = 16
URL_SCHEME_ABOUT = 17
URL_SCHEME_RES = 18
URL_SCHEME_MSSHELLROOTED = 19
URL_SCHEME_MSSHELLIDLIST = 20
URL_SCHEME_MSHELP = 21
URL_SCHEME_MAXVALUE = 22

URL_PART typedef DWORD
URL_PART_NONE = 0 
URL_PART_SCHEME = 1 
URL_PART_HOSTNAME = 2
URL_PART_USERNAME = 3
URL_PART_PASSWORD = 4
URL_PART_PORT = 5
URL_PART_QUERY = 6

URLIS typedef DWORD
URLIS_URL = 0
URLIS_OPAQUE = 1
URLIS_NOHISTORY = 2
URLIS_FILEURL = 3
URLIS_APPLIABLE = 4
URLIS_DIRECTORY = 5
URLIS_HASQUERY = 6

URL_UNESCAPE	EQU	10000000h
URL_ESCAPE_UNSAFE	EQU	20000000h
URL_PLUGGABLE_PROTOCOL	EQU	40000000h
URL_WININET_COMPATIBILITY	EQU	80000000h
URL_DONT_ESCAPE_EXTRA_INFO	EQU	02000000h
URL_DONT_UNESCAPE_EXTRA_INFO	EQU	<URL_DONT_ESCAPE_EXTRA_INFO>
URL_BROWSER_MODE	EQU	<URL_DONT_ESCAPE_EXTRA_INFO>
URL_ESCAPE_SPACES_ONLY	EQU	04000000h
URL_DONT_SIMPLIFY	EQU	08000000h
URL_NO_META	EQU	<URL_DONT_SIMPLIFY>
URL_UNESCAPE_INPLACE	EQU	00100000h
URL_CONVERT_IF_DOSPATH	EQU	00200000h
URL_UNESCAPE_HIGH_ANSI_ONLY	EQU	00400000h
URL_INTERNAL_PATH	EQU	00800000h
URL_FILE_USE_PATHURL	EQU	00010000h
URL_ESCAPE_PERCENT	EQU	00001000h
URL_ESCAPE_SEGMENT_ONLY	EQU	00002000h
URL_PARTFLAG_KEEPSCHEME	EQU	00000001h
URL_APPLY_DEFAULT	EQU	00000001h
URL_APPLY_GUESSSCHEME	EQU	00000002h
URL_APPLY_GUESSFILE	EQU	00000004h
URL_APPLY_FORCEAPPLY	EQU	00000008h
proto_UrlCompareA typedef proto stdcall  :LPSTR, :LPSTR, :BOOL
externdef stdcall _imp__UrlCompareA@12: ptr proto_UrlCompareA
UrlCompareA equ <_imp__UrlCompareA@12>
proto_UrlCompareW typedef proto stdcall  :LPWSTR, :LPWSTR, :BOOL
externdef stdcall _imp__UrlCompareW@12: ptr proto_UrlCompareW
UrlCompareW equ <_imp__UrlCompareW@12>
proto_UrlCombineA typedef proto stdcall  :LPSTR, :LPSTR, :LPSTR, :LPDWORD, :DWORD
externdef stdcall _imp__UrlCombineA@20: ptr proto_UrlCombineA
UrlCombineA equ <_imp__UrlCombineA@20>
proto_UrlCombineW typedef proto stdcall  :LPWSTR, :LPWSTR, :LPWSTR, :LPDWORD, :DWORD
externdef stdcall _imp__UrlCombineW@20: ptr proto_UrlCombineW
UrlCombineW equ <_imp__UrlCombineW@20>
proto_UrlCanonicalizeA typedef proto stdcall  :LPSTR, :LPSTR, :LPDWORD, :DWORD
externdef stdcall _imp__UrlCanonicalizeA@16: ptr proto_UrlCanonicalizeA
UrlCanonicalizeA equ <_imp__UrlCanonicalizeA@16>
proto_UrlCanonicalizeW typedef proto stdcall  :LPWSTR, :LPWSTR, :LPDWORD, :DWORD
externdef stdcall _imp__UrlCanonicalizeW@16: ptr proto_UrlCanonicalizeW
UrlCanonicalizeW equ <_imp__UrlCanonicalizeW@16>
proto_UrlIsOpaqueA typedef proto stdcall  :LPSTR
externdef stdcall _imp__UrlIsOpaqueA@4: ptr proto_UrlIsOpaqueA
UrlIsOpaqueA equ <_imp__UrlIsOpaqueA@4>
proto_UrlIsOpaqueW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__UrlIsOpaqueW@4: ptr proto_UrlIsOpaqueW
UrlIsOpaqueW equ <_imp__UrlIsOpaqueW@4>
proto_UrlIsNoHistoryA typedef proto stdcall  :LPSTR
externdef stdcall _imp__UrlIsNoHistoryA@4: ptr proto_UrlIsNoHistoryA
UrlIsNoHistoryA equ <_imp__UrlIsNoHistoryA@4>
proto_UrlIsNoHistoryW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__UrlIsNoHistoryW@4: ptr proto_UrlIsNoHistoryW
UrlIsNoHistoryW equ <_imp__UrlIsNoHistoryW@4>
UrlIsFileUrlA macro pszURL
	exitm <UrlIsA ( pszURL , URLIS_FILEURL ) >
	endm
UrlIsFileUrlW macro pszURL
	exitm <UrlIsW ( pszURL , URLIS_FILEURL ) >
	endm
proto_UrlIsA typedef proto stdcall  :LPSTR, :URLIS
externdef stdcall _imp__UrlIsA@8: ptr proto_UrlIsA
UrlIsA equ <_imp__UrlIsA@8>
proto_UrlIsW typedef proto stdcall  :LPWSTR, :URLIS
externdef stdcall _imp__UrlIsW@8: ptr proto_UrlIsW
UrlIsW equ <_imp__UrlIsW@8>
proto_UrlGetLocationA typedef proto stdcall  :LPSTR
externdef stdcall _imp__UrlGetLocationA@4: ptr proto_UrlGetLocationA
UrlGetLocationA equ <_imp__UrlGetLocationA@4>
proto_UrlGetLocationW typedef proto stdcall  :LPWSTR
externdef stdcall _imp__UrlGetLocationW@4: ptr proto_UrlGetLocationW
UrlGetLocationW equ <_imp__UrlGetLocationW@4>
proto_UrlUnescapeA typedef proto stdcall  :LPSTR, :LPSTR, :LPDWORD, :DWORD
externdef stdcall _imp__UrlUnescapeA@16: ptr proto_UrlUnescapeA
UrlUnescapeA equ <_imp__UrlUnescapeA@16>
proto_UrlUnescapeW typedef proto stdcall  :LPWSTR, :LPWSTR, :LPDWORD, :DWORD
externdef stdcall _imp__UrlUnescapeW@16: ptr proto_UrlUnescapeW
UrlUnescapeW equ <_imp__UrlUnescapeW@16>
proto_UrlEscapeA typedef proto stdcall  :LPSTR, :LPSTR, :LPDWORD, :DWORD
externdef stdcall _imp__UrlEscapeA@16: ptr proto_UrlEscapeA
UrlEscapeA equ <_imp__UrlEscapeA@16>
proto_UrlEscapeW typedef proto stdcall  :LPWSTR, :LPWSTR, :LPDWORD, :DWORD
externdef stdcall _imp__UrlEscapeW@16: ptr proto_UrlEscapeW
UrlEscapeW equ <_imp__UrlEscapeW@16>
proto_UrlCreateFromPathA typedef proto stdcall  :LPSTR, :LPSTR, :LPDWORD, :DWORD
externdef stdcall _imp__UrlCreateFromPathA@16: ptr proto_UrlCreateFromPathA
UrlCreateFromPathA equ <_imp__UrlCreateFromPathA@16>
proto_UrlCreateFromPathW typedef proto stdcall  :LPWSTR, :LPWSTR, :LPDWORD, :DWORD
externdef stdcall _imp__UrlCreateFromPathW@16: ptr proto_UrlCreateFromPathW
UrlCreateFromPathW equ <_imp__UrlCreateFromPathW@16>
proto_PathCreateFromUrlA typedef proto stdcall  :LPSTR, :LPSTR, :LPDWORD, :DWORD
externdef stdcall _imp__PathCreateFromUrlA@16: ptr proto_PathCreateFromUrlA
PathCreateFromUrlA equ <_imp__PathCreateFromUrlA@16>
proto_PathCreateFromUrlW typedef proto stdcall  :LPWSTR, :LPWSTR, :LPDWORD, :DWORD
externdef stdcall _imp__PathCreateFromUrlW@16: ptr proto_PathCreateFromUrlW
PathCreateFromUrlW equ <_imp__PathCreateFromUrlW@16>
proto_UrlHashA typedef proto stdcall  :LPSTR, :LPBYTE, :DWORD
externdef stdcall _imp__UrlHashA@12: ptr proto_UrlHashA
UrlHashA equ <_imp__UrlHashA@12>
proto_UrlHashW typedef proto stdcall  :LPWSTR, :LPBYTE, :DWORD
externdef stdcall _imp__UrlHashW@12: ptr proto_UrlHashW
UrlHashW equ <_imp__UrlHashW@12>
proto_UrlGetPartW typedef proto stdcall  :LPWSTR, :LPWSTR, :LPDWORD, :DWORD, :DWORD
externdef stdcall _imp__UrlGetPartW@20: ptr proto_UrlGetPartW
UrlGetPartW equ <_imp__UrlGetPartW@20>
proto_UrlGetPartA typedef proto stdcall  :LPSTR, :LPSTR, :LPDWORD, :DWORD, :DWORD
externdef stdcall _imp__UrlGetPartA@20: ptr proto_UrlGetPartA
UrlGetPartA equ <_imp__UrlGetPartA@20>
proto_UrlApplySchemeA typedef proto stdcall  :LPSTR, :LPSTR, :LPDWORD, :DWORD
externdef stdcall _imp__UrlApplySchemeA@16: ptr proto_UrlApplySchemeA
UrlApplySchemeA equ <_imp__UrlApplySchemeA@16>
proto_UrlApplySchemeW typedef proto stdcall  :LPWSTR, :LPWSTR, :LPDWORD, :DWORD
externdef stdcall _imp__UrlApplySchemeW@16: ptr proto_UrlApplySchemeW
UrlApplySchemeW equ <_imp__UrlApplySchemeW@16>
proto_HashData typedef proto stdcall  :LPBYTE, :DWORD, :LPBYTE, :DWORD
externdef stdcall _imp__HashData@16: ptr proto_HashData
HashData equ <_imp__HashData@16>
ifdef UNICODE
UrlCompare	EQU	<UrlCompareW>
UrlCombine	EQU	<UrlCombineW>
UrlCanonicalize	EQU	<UrlCanonicalizeW>
UrlIsOpaque	EQU	<UrlIsOpaqueW>
UrlIsFileUrl	EQU	<UrlIsFileUrlW>
UrlGetLocation	EQU	<UrlGetLocationW>
UrlUnescape	EQU	<UrlUnescapeW>
UrlEscape	EQU	<UrlEscapeW>
UrlCreateFromPath	EQU	<UrlCreateFromPathW>
PathCreateFromUrl	EQU	<PathCreateFromUrlW>
UrlHash	EQU	<UrlHashW>
UrlGetPart	EQU	<UrlGetPartW>
UrlApplyScheme	EQU	<UrlApplySchemeW>
UrlIs	EQU	<UrlIsW>
else 
UrlCompare	EQU	<UrlCompareA>
UrlCombine	EQU	<UrlCombineA>
UrlCanonicalize	EQU	<UrlCanonicalizeA>
UrlIsOpaque	EQU	<UrlIsOpaqueA>
UrlIsFileUrl	EQU	<UrlIsFileUrlA>
UrlGetLocation	EQU	<UrlGetLocationA>
UrlUnescape	EQU	<UrlUnescapeA>
UrlEscape	EQU	<UrlEscapeA>
UrlCreateFromPath	EQU	<UrlCreateFromPathA>
PathCreateFromUrl	EQU	<PathCreateFromUrlA>
UrlHash	EQU	<UrlHashA>
UrlGetPart	EQU	<UrlGetPartA>
UrlApplyScheme	EQU	<UrlApplySchemeA>
UrlIs	EQU	<UrlIsA>
endif 
UrlEscapeSpaces macro pszUrl,pszEscaped,pcchEscaped
	exitm <UrlCanonicalize ( pszUrl , pszEscaped , pcchEscaped , URL_ESCAPE_SPACES_ONLY  or  URL_DONT_ESCAPE_EXTRA_INFO ) >
	endm
UrlUnescapeInPlace macro pszUrl,dwFlags
	exitm <UrlUnescape ( pszUrl , NULL , NULL , dwFlags  or  URL_UNESCAPE_INPLACE ) >
	endm
endif 
ifndef NO_SHLWAPI_REG
proto_SHDeleteEmptyKeyA typedef proto stdcall  :HKEY, :LPSTR
externdef stdcall _imp__SHDeleteEmptyKeyA@8: ptr proto_SHDeleteEmptyKeyA
SHDeleteEmptyKeyA equ <_imp__SHDeleteEmptyKeyA@8>
proto_SHDeleteEmptyKeyW typedef proto stdcall  :HKEY, :LPWSTR
externdef stdcall _imp__SHDeleteEmptyKeyW@8: ptr proto_SHDeleteEmptyKeyW
SHDeleteEmptyKeyW equ <_imp__SHDeleteEmptyKeyW@8>
ifdef UNICODE
SHDeleteEmptyKey	EQU	<SHDeleteEmptyKeyW>
else 
SHDeleteEmptyKey	EQU	<SHDeleteEmptyKeyA>
endif 
proto_SHDeleteKeyA typedef proto stdcall  :HKEY, :LPSTR
externdef stdcall _imp__SHDeleteKeyA@8: ptr proto_SHDeleteKeyA
SHDeleteKeyA equ <_imp__SHDeleteKeyA@8>
proto_SHDeleteKeyW typedef proto stdcall  :HKEY, :LPWSTR
externdef stdcall _imp__SHDeleteKeyW@8: ptr proto_SHDeleteKeyW
SHDeleteKeyW equ <_imp__SHDeleteKeyW@8>
ifdef UNICODE
SHDeleteKey	EQU	<SHDeleteKeyW>
else 
SHDeleteKey	EQU	<SHDeleteKeyA>
endif 
proto_SHRegDuplicateHKey typedef proto stdcall  :HKEY
externdef stdcall _imp__SHRegDuplicateHKey@4: ptr proto_SHRegDuplicateHKey
SHRegDuplicateHKey equ <_imp__SHRegDuplicateHKey@4>
proto_SHDeleteValueA typedef proto stdcall  :HKEY, :LPSTR, :LPSTR
externdef stdcall _imp__SHDeleteValueA@12: ptr proto_SHDeleteValueA
SHDeleteValueA equ <_imp__SHDeleteValueA@12>
proto_SHDeleteValueW typedef proto stdcall  :HKEY, :LPWSTR, :LPWSTR
externdef stdcall _imp__SHDeleteValueW@12: ptr proto_SHDeleteValueW
SHDeleteValueW equ <_imp__SHDeleteValueW@12>
ifdef UNICODE
SHDeleteValue	EQU	<SHDeleteValueW>
else 
SHDeleteValue	EQU	<SHDeleteValueA>
endif 
proto_SHGetValueA typedef proto stdcall  :HKEY, :LPSTR, :LPSTR, :ptr DWORD, :ptr , :ptr DWORD
externdef stdcall _imp__SHGetValueA@24: ptr proto_SHGetValueA
SHGetValueA equ <_imp__SHGetValueA@24>
proto_SHGetValueW typedef proto stdcall  :HKEY, :LPWSTR, :LPWSTR, :ptr DWORD, :ptr , :ptr DWORD
externdef stdcall _imp__SHGetValueW@24: ptr proto_SHGetValueW
SHGetValueW equ <_imp__SHGetValueW@24>
ifdef UNICODE
SHGetValue	EQU	<SHGetValueW>
else 
SHGetValue	EQU	<SHGetValueA>
endif 
proto_SHSetValueA typedef proto stdcall  :HKEY, :LPSTR, :LPSTR, :DWORD, :LPCVOID, :DWORD
externdef stdcall _imp__SHSetValueA@24: ptr proto_SHSetValueA
SHSetValueA equ <_imp__SHSetValueA@24>
proto_SHSetValueW typedef proto stdcall  :HKEY, :LPWSTR, :LPWSTR, :DWORD, :LPCVOID, :DWORD
externdef stdcall _imp__SHSetValueW@24: ptr proto_SHSetValueW
SHSetValueW equ <_imp__SHSetValueW@24>
ifdef UNICODE
SHSetValue	EQU	<SHSetValueW>
else 
SHSetValue	EQU	<SHSetValueA>
endif 
proto_SHQueryValueExA typedef proto stdcall  :HKEY, :LPSTR, :ptr DWORD, :ptr DWORD, :ptr , :ptr DWORD
externdef stdcall _imp__SHQueryValueExA@24: ptr proto_SHQueryValueExA
SHQueryValueExA equ <_imp__SHQueryValueExA@24>
proto_SHQueryValueExW typedef proto stdcall  :HKEY, :LPWSTR, :ptr DWORD, :ptr DWORD, :ptr , :ptr DWORD
externdef stdcall _imp__SHQueryValueExW@24: ptr proto_SHQueryValueExW
SHQueryValueExW equ <_imp__SHQueryValueExW@24>
ifdef UNICODE
SHQueryValueEx	EQU	<SHQueryValueExW>
else 
SHQueryValueEx	EQU	<SHQueryValueExA>
endif 
proto_SHEnumKeyExA typedef proto stdcall  :HKEY, :DWORD, :LPSTR, :LPDWORD
externdef stdcall _imp__SHEnumKeyExA@16: ptr proto_SHEnumKeyExA
SHEnumKeyExA equ <_imp__SHEnumKeyExA@16>
proto_SHEnumKeyExW typedef proto stdcall  :HKEY, :DWORD, :LPWSTR, :LPDWORD
externdef stdcall _imp__SHEnumKeyExW@16: ptr proto_SHEnumKeyExW
SHEnumKeyExW equ <_imp__SHEnumKeyExW@16>
proto_SHEnumValueA typedef proto stdcall  :HKEY, :DWORD, :LPSTR, :LPDWORD, :LPDWORD, :ptr , :LPDWORD
externdef stdcall _imp__SHEnumValueA@28: ptr proto_SHEnumValueA
SHEnumValueA equ <_imp__SHEnumValueA@28>
proto_SHEnumValueW typedef proto stdcall  :HKEY, :DWORD, :LPWSTR, :LPDWORD, :LPDWORD, :ptr , :LPDWORD
externdef stdcall _imp__SHEnumValueW@28: ptr proto_SHEnumValueW
SHEnumValueW equ <_imp__SHEnumValueW@28>
proto_SHQueryInfoKeyA typedef proto stdcall  :HKEY, :LPDWORD, :LPDWORD, :LPDWORD, :LPDWORD
externdef stdcall _imp__SHQueryInfoKeyA@20: ptr proto_SHQueryInfoKeyA
SHQueryInfoKeyA equ <_imp__SHQueryInfoKeyA@20>
proto_SHQueryInfoKeyW typedef proto stdcall  :HKEY, :LPDWORD, :LPDWORD, :LPDWORD, :LPDWORD
externdef stdcall _imp__SHQueryInfoKeyW@20: ptr proto_SHQueryInfoKeyW
SHQueryInfoKeyW equ <_imp__SHQueryInfoKeyW@20>
proto_SHCopyKeyA typedef proto stdcall  :HKEY, :LPSTR, :HKEY, :DWORD
externdef stdcall _imp__SHCopyKeyA@16: ptr proto_SHCopyKeyA
SHCopyKeyA equ <_imp__SHCopyKeyA@16>
proto_SHCopyKeyW typedef proto stdcall  :HKEY, :LPWSTR, :HKEY, :DWORD
externdef stdcall _imp__SHCopyKeyW@16: ptr proto_SHCopyKeyW
SHCopyKeyW equ <_imp__SHCopyKeyW@16>
proto_SHRegGetPathA typedef proto stdcall  :HKEY, :LPSTR, :LPSTR, :LPSTR, :DWORD
externdef stdcall _imp__SHRegGetPathA@20: ptr proto_SHRegGetPathA
SHRegGetPathA equ <_imp__SHRegGetPathA@20>
proto_SHRegGetPathW typedef proto stdcall  :HKEY, :LPWSTR, :LPWSTR, :LPWSTR, :DWORD
externdef stdcall _imp__SHRegGetPathW@20: ptr proto_SHRegGetPathW
SHRegGetPathW equ <_imp__SHRegGetPathW@20>
proto_SHRegSetPathA typedef proto stdcall  :HKEY, :LPSTR, :LPSTR, :LPSTR, :DWORD
externdef stdcall _imp__SHRegSetPathA@20: ptr proto_SHRegSetPathA
SHRegSetPathA equ <_imp__SHRegSetPathA@20>
proto_SHRegSetPathW typedef proto stdcall  :HKEY, :LPWSTR, :LPWSTR, :LPWSTR, :DWORD
externdef stdcall _imp__SHRegSetPathW@20: ptr proto_SHRegSetPathW
SHRegSetPathW equ <_imp__SHRegSetPathW@20>
ifdef UNICODE
SHEnumKeyEx	EQU	<SHEnumKeyExW>
SHEnumValue	EQU	<SHEnumValueW>
SHQueryInfoKey	EQU	<SHQueryInfoKeyW>
SHCopyKey	EQU	<SHCopyKeyW>
SHRegGetPath	EQU	<SHRegGetPathW>
SHRegSetPath	EQU	<SHRegSetPathW>
else 
SHEnumKeyEx	EQU	<SHEnumKeyExA>
SHEnumValue	EQU	<SHEnumValueA>
SHQueryInfoKey	EQU	<SHQueryInfoKeyA>
SHCopyKey	EQU	<SHCopyKeyA>
SHRegGetPath	EQU	<SHRegGetPathA>
SHRegSetPath	EQU	<SHRegSetPathA>
endif 
SHREGDEL_FLAGS typedef DWORD
SHREGDEL_DEFAULT = 00000000h 
SHREGDEL_HKCU = 00000001h 
SHREGDEL_HKLM = 00000010h 
SHREGDEL_BOTH = 00000011h 

SHREGENUM_FLAGS typedef DWORD
SHREGENUM_DEFAULT = 00000000h 
SHREGENUM_HKCU = 00000001h 
SHREGENUM_HKLM = 00000010h 
SHREGENUM_BOTH = 00000011h 

SHREGSET_HKCU	EQU	00000001h
SHREGSET_FORCE_HKCU	EQU	00000002h
SHREGSET_HKLM	EQU	00000004h
SHREGSET_FORCE_HKLM	EQU	00000008h
SHREGSET_DEFAULT	EQU	<( SHREGSET_FORCE_HKCU  or  SHREGSET_HKLM )>
HUSKEY typedef HANDLE
PHUSKEY typedef ptr HUSKEY
proto_SHRegCreateUSKeyA typedef proto stdcall  :LPSTR, :REGSAM, :HUSKEY, :PHUSKEY, :DWORD
externdef stdcall _imp__SHRegCreateUSKeyA@20: ptr proto_SHRegCreateUSKeyA
SHRegCreateUSKeyA equ <_imp__SHRegCreateUSKeyA@20>
proto_SHRegCreateUSKeyW typedef proto stdcall  :LPWSTR, :REGSAM, :HUSKEY, :PHUSKEY, :DWORD
externdef stdcall _imp__SHRegCreateUSKeyW@20: ptr proto_SHRegCreateUSKeyW
SHRegCreateUSKeyW equ <_imp__SHRegCreateUSKeyW@20>
proto_SHRegOpenUSKeyA typedef proto stdcall  :LPSTR, :REGSAM, :HUSKEY, :PHUSKEY, :BOOL
externdef stdcall _imp__SHRegOpenUSKeyA@20: ptr proto_SHRegOpenUSKeyA
SHRegOpenUSKeyA equ <_imp__SHRegOpenUSKeyA@20>
proto_SHRegOpenUSKeyW typedef proto stdcall  :LPWSTR, :REGSAM, :HUSKEY, :PHUSKEY, :BOOL
externdef stdcall _imp__SHRegOpenUSKeyW@20: ptr proto_SHRegOpenUSKeyW
SHRegOpenUSKeyW equ <_imp__SHRegOpenUSKeyW@20>
proto_SHRegQueryUSValueA typedef proto stdcall  :HUSKEY, :LPSTR, :LPDWORD, :ptr , :LPDWORD, :BOOL, :ptr , :DWORD
externdef stdcall _imp__SHRegQueryUSValueA@32: ptr proto_SHRegQueryUSValueA
SHRegQueryUSValueA equ <_imp__SHRegQueryUSValueA@32>
proto_SHRegQueryUSValueW typedef proto stdcall  :HUSKEY, :LPWSTR, :LPDWORD, :ptr , :LPDWORD, :BOOL, :ptr , :DWORD
externdef stdcall _imp__SHRegQueryUSValueW@32: ptr proto_SHRegQueryUSValueW
SHRegQueryUSValueW equ <_imp__SHRegQueryUSValueW@32>
proto_SHRegWriteUSValueA typedef proto stdcall  :HUSKEY, :LPSTR, :DWORD, :ptr , :DWORD, :DWORD
externdef stdcall _imp__SHRegWriteUSValueA@24: ptr proto_SHRegWriteUSValueA
SHRegWriteUSValueA equ <_imp__SHRegWriteUSValueA@24>
proto_SHRegWriteUSValueW typedef proto stdcall  :HUSKEY, :LPWSTR, :DWORD, :ptr , :DWORD, :DWORD
externdef stdcall _imp__SHRegWriteUSValueW@24: ptr proto_SHRegWriteUSValueW
SHRegWriteUSValueW equ <_imp__SHRegWriteUSValueW@24>
proto_SHRegDeleteUSValueA typedef proto stdcall  :HUSKEY, :LPSTR, :SHREGDEL_FLAGS
externdef stdcall _imp__SHRegDeleteUSValueA@12: ptr proto_SHRegDeleteUSValueA
SHRegDeleteUSValueA equ <_imp__SHRegDeleteUSValueA@12>
proto_SHRegDeleteEmptyUSKeyW typedef proto stdcall  :HUSKEY, :LPWSTR, :SHREGDEL_FLAGS
externdef stdcall _imp__SHRegDeleteEmptyUSKeyW@12: ptr proto_SHRegDeleteEmptyUSKeyW
SHRegDeleteEmptyUSKeyW equ <_imp__SHRegDeleteEmptyUSKeyW@12>
proto_SHRegDeleteEmptyUSKeyA typedef proto stdcall  :HUSKEY, :LPSTR, :SHREGDEL_FLAGS
externdef stdcall _imp__SHRegDeleteEmptyUSKeyA@12: ptr proto_SHRegDeleteEmptyUSKeyA
SHRegDeleteEmptyUSKeyA equ <_imp__SHRegDeleteEmptyUSKeyA@12>
proto_SHRegDeleteUSValueW typedef proto stdcall  :HUSKEY, :LPWSTR, :SHREGDEL_FLAGS
externdef stdcall _imp__SHRegDeleteUSValueW@12: ptr proto_SHRegDeleteUSValueW
SHRegDeleteUSValueW equ <_imp__SHRegDeleteUSValueW@12>
proto_SHRegEnumUSKeyA typedef proto stdcall  :HUSKEY, :DWORD, :LPSTR, :LPDWORD, :SHREGENUM_FLAGS
externdef stdcall _imp__SHRegEnumUSKeyA@20: ptr proto_SHRegEnumUSKeyA
SHRegEnumUSKeyA equ <_imp__SHRegEnumUSKeyA@20>
proto_SHRegEnumUSKeyW typedef proto stdcall  :HUSKEY, :DWORD, :LPWSTR, :LPDWORD, :SHREGENUM_FLAGS
externdef stdcall _imp__SHRegEnumUSKeyW@20: ptr proto_SHRegEnumUSKeyW
SHRegEnumUSKeyW equ <_imp__SHRegEnumUSKeyW@20>
proto_SHRegEnumUSValueA typedef proto stdcall  :HUSKEY, :DWORD, :LPSTR, :LPDWORD, :LPDWORD, :ptr , :LPDWORD, :SHREGENUM_FLAGS
externdef stdcall _imp__SHRegEnumUSValueA@32: ptr proto_SHRegEnumUSValueA
SHRegEnumUSValueA equ <_imp__SHRegEnumUSValueA@32>
proto_SHRegEnumUSValueW typedef proto stdcall  :HUSKEY, :DWORD, :LPWSTR, :LPDWORD, :LPDWORD, :ptr , :LPDWORD, :SHREGENUM_FLAGS
externdef stdcall _imp__SHRegEnumUSValueW@32: ptr proto_SHRegEnumUSValueW
SHRegEnumUSValueW equ <_imp__SHRegEnumUSValueW@32>
proto_SHRegQueryInfoUSKeyA typedef proto stdcall  :HUSKEY, :LPDWORD, :LPDWORD, :LPDWORD, :LPDWORD, :SHREGENUM_FLAGS
externdef stdcall _imp__SHRegQueryInfoUSKeyA@24: ptr proto_SHRegQueryInfoUSKeyA
SHRegQueryInfoUSKeyA equ <_imp__SHRegQueryInfoUSKeyA@24>
proto_SHRegQueryInfoUSKeyW typedef proto stdcall  :HUSKEY, :LPDWORD, :LPDWORD, :LPDWORD, :LPDWORD, :SHREGENUM_FLAGS
externdef stdcall _imp__SHRegQueryInfoUSKeyW@24: ptr proto_SHRegQueryInfoUSKeyW
SHRegQueryInfoUSKeyW equ <_imp__SHRegQueryInfoUSKeyW@24>
proto_SHRegCloseUSKey typedef proto stdcall  :HUSKEY
externdef stdcall _imp__SHRegCloseUSKey@4: ptr proto_SHRegCloseUSKey
SHRegCloseUSKey equ <_imp__SHRegCloseUSKey@4>
proto_SHRegGetUSValueA typedef proto stdcall  :LPSTR, :LPSTR, :LPDWORD, :ptr , :LPDWORD, :BOOL, :ptr , :DWORD
externdef stdcall _imp__SHRegGetUSValueA@32: ptr proto_SHRegGetUSValueA
SHRegGetUSValueA equ <_imp__SHRegGetUSValueA@32>
proto_SHRegGetUSValueW typedef proto stdcall  :LPWSTR, :LPWSTR, :LPDWORD, :ptr , :LPDWORD, :BOOL, :ptr , :DWORD
externdef stdcall _imp__SHRegGetUSValueW@32: ptr proto_SHRegGetUSValueW
SHRegGetUSValueW equ <_imp__SHRegGetUSValueW@32>
proto_SHRegSetUSValueA typedef proto stdcall  :LPSTR, :LPSTR, :DWORD, :ptr , :DWORD, :DWORD
externdef stdcall _imp__SHRegSetUSValueA@24: ptr proto_SHRegSetUSValueA
SHRegSetUSValueA equ <_imp__SHRegSetUSValueA@24>
proto_SHRegSetUSValueW typedef proto stdcall  :LPWSTR, :LPWSTR, :DWORD, :ptr , :DWORD, :DWORD
externdef stdcall _imp__SHRegSetUSValueW@24: ptr proto_SHRegSetUSValueW
SHRegSetUSValueW equ <_imp__SHRegSetUSValueW@24>
proto_SHRegGetIntW typedef proto stdcall  :HKEY, :LPWSTR, :DWORD
externdef stdcall _imp__SHRegGetIntW@12: ptr proto_SHRegGetIntW
SHRegGetIntW equ <_imp__SHRegGetIntW@12>
ifdef UNICODE
SHRegCreateUSKey	EQU	<SHRegCreateUSKeyW>
SHRegOpenUSKey	EQU	<SHRegOpenUSKeyW>
SHRegQueryUSValue	EQU	<SHRegQueryUSValueW>
SHRegWriteUSValue	EQU	<SHRegWriteUSValueW>
SHRegDeleteUSValue	EQU	<SHRegDeleteUSValueW>
SHRegDeleteEmptyUSKey	EQU	<SHRegDeleteEmptyUSKeyW>
SHRegEnumUSKey	EQU	<SHRegEnumUSKeyW>
SHRegEnumUSValue	EQU	<SHRegEnumUSValueW>
SHRegQueryInfoUSKey	EQU	<SHRegQueryInfoUSKeyW>
SHRegGetUSValue	EQU	<SHRegGetUSValueW>
SHRegSetUSValue	EQU	<SHRegSetUSValueW>
SHRegGetInt	EQU	<SHRegGetIntW>
else 
SHRegCreateUSKey	EQU	<SHRegCreateUSKeyA>
SHRegOpenUSKey	EQU	<SHRegOpenUSKeyA>
SHRegQueryUSValue	EQU	<SHRegQueryUSValueA>
SHRegWriteUSValue	EQU	<SHRegWriteUSValueA>
SHRegDeleteUSValue	EQU	<SHRegDeleteUSValueA>
SHRegDeleteEmptyUSKey	EQU	<SHRegDeleteEmptyUSKeyA>
SHRegEnumUSKey	EQU	<SHRegEnumUSKeyA>
SHRegEnumUSValue	EQU	<SHRegEnumUSValueA>
SHRegQueryInfoUSKey	EQU	<SHRegQueryInfoUSKeyA>
SHRegGetUSValue	EQU	<SHRegGetUSValueA>
SHRegSetUSValue	EQU	<SHRegSetUSValueA>
endif 
proto_SHRegGetBoolUSValueA typedef proto stdcall  :LPSTR, :LPSTR, :BOOL, :BOOL
externdef stdcall _imp__SHRegGetBoolUSValueA@16: ptr proto_SHRegGetBoolUSValueA
SHRegGetBoolUSValueA equ <_imp__SHRegGetBoolUSValueA@16>
proto_SHRegGetBoolUSValueW typedef proto stdcall  :LPWSTR, :LPWSTR, :BOOL, :BOOL
externdef stdcall _imp__SHRegGetBoolUSValueW@16: ptr proto_SHRegGetBoolUSValueW
SHRegGetBoolUSValueW equ <_imp__SHRegGetBoolUSValueW@16>
ifdef UNICODE
SHRegGetBoolUSValue	EQU	<SHRegGetBoolUSValueW>
else 
SHRegGetBoolUSValue	EQU	<SHRegGetBoolUSValueA>
endif 
ASSOCF_INIT_NOREMAPCLSID = 00000001h 
ASSOCF_INIT_BYEXENAME = 00000002h 
ASSOCF_OPEN_BYEXENAME = 00000002h 
ASSOCF_INIT_DEFAULTTOSTAR = 00000004h 
ASSOCF_INIT_DEFAULTTOFOLDER = 00000008h 
ASSOCF_NOUSERSETTINGS = 00000010h 
ASSOCF_NOTRUNCATE = 00000020h 
ASSOCF_VERIFY = 00000040h 
ASSOCF_REMAPRUNDLL = 00000080h 
ASSOCF_NOFIXUPS = 00000100h 
ASSOCF_IGNOREBASECLASS = 00000200h 

ASSOCF typedef DWORD
ASSOCSTR typedef DWORD
ASSOCSTR_COMMAND = 1 
ASSOCSTR_EXECUTABLE = 2
ASSOCSTR_FRIENDLYDOCNAME = 3
ASSOCSTR_FRIENDLYAPPNAME = 4
ASSOCSTR_NOOPEN = 5
ASSOCSTR_SHELLNEWVALUE = 6
ASSOCSTR_DDECOMMAND = 7
ASSOCSTR_DDEIFEXEC = 8
ASSOCSTR_DDEAPPLICATION = 9
ASSOCSTR_DDETOPIC = 10
ASSOCSTR_INFOTIP = 11
ASSOCSTR_QUICKTIP = 12
ASSOCSTR_TILEINFO = 13
ASSOCSTR_CONTENTTYPE = 14
ASSOCSTR_DEFAULTICON = 15
ASSOCSTR_SHELLEXTENSION = 16
ASSOCSTR_MAX = 17

ASSOCKEY typedef DWORD
ASSOCKEY_SHELLEXECCLASS = 1 
ASSOCKEY_APP = 2
ASSOCKEY_CLASS = 3
ASSOCKEY_BASECLASS = 4
ASSOCKEY_MAX = 5

ASSOCDATA typedef DWORD
ASSOCDATA_MSIDESCRIPTOR = 1 
ASSOCDATA_NOACTIVATEHANDLER = 2
ASSOCDATA_QUERYCLASSSTORE = 3
ASSOCDATA_HASPERUSERASSOC = 4
ASSOCDATA_EDITFLAGS = 5
ASSOCDATA_VALUE = 6
ASSOCDATA_MAX = 7

ASSOCENUM typedef DWORD
ASSOCENUM_NONE = 0

;#undef INTERFACE 
INTERFACE	EQU	<IQueryAssociations>
DECLARE_INTERFACE_( IQueryAssociations , IUnknown)
;{
STDMETHOD  QueryInterface , :REFIID, :ptr ptr 
STDMETHOD_  ULONG , AddRef 
STDMETHOD_  ULONG , Release 
STDMETHOD  Init , :ASSOCF, :LPWSTR, :HKEY, :HWND
STDMETHOD  GetString , :ASSOCF, :ASSOCSTR, :LPWSTR, :LPWSTR, :ptr DWORD
STDMETHOD  GetKey , :ASSOCF, :ASSOCKEY, :LPWSTR, :ptr HKEY
STDMETHOD  GetData , :ASSOCF, :ASSOCDATA, :LPWSTR, :LPVOID, :ptr DWORD
STDMETHOD  GetEnum , :ASSOCF, :ASSOCENUM, :LPWSTR, :REFIID, :ptr LPVOID
;}
DECLARE_INTERFACE__END

proto_AssocCreate typedef proto stdcall  :CLSID, :REFIID, :ptr LPVOID
externdef stdcall _imp__AssocCreate@12: ptr proto_AssocCreate
AssocCreate equ <_imp__AssocCreate@12>
proto_AssocQueryStringA typedef proto stdcall  :ASSOCF, :ASSOCSTR, :LPSTR, :LPSTR, :LPSTR, :ptr DWORD
externdef stdcall _imp__AssocQueryStringA@24: ptr proto_AssocQueryStringA
AssocQueryStringA equ <_imp__AssocQueryStringA@24>
proto_AssocQueryStringW typedef proto stdcall  :ASSOCF, :ASSOCSTR, :LPWSTR, :LPWSTR, :LPWSTR, :ptr DWORD
externdef stdcall _imp__AssocQueryStringW@24: ptr proto_AssocQueryStringW
AssocQueryStringW equ <_imp__AssocQueryStringW@24>
ifdef UNICODE
AssocQueryString	EQU	<AssocQueryStringW>
else 
AssocQueryString	EQU	<AssocQueryStringA>
endif 
proto_AssocQueryStringByKeyA typedef proto stdcall  :ASSOCF, :ASSOCSTR, :HKEY, :LPSTR, :LPSTR, :ptr DWORD
externdef stdcall _imp__AssocQueryStringByKeyA@24: ptr proto_AssocQueryStringByKeyA
AssocQueryStringByKeyA equ <_imp__AssocQueryStringByKeyA@24>
proto_AssocQueryStringByKeyW typedef proto stdcall  :ASSOCF, :ASSOCSTR, :HKEY, :LPWSTR, :LPWSTR, :ptr DWORD
externdef stdcall _imp__AssocQueryStringByKeyW@24: ptr proto_AssocQueryStringByKeyW
AssocQueryStringByKeyW equ <_imp__AssocQueryStringByKeyW@24>
ifdef UNICODE
AssocQueryStringByKey	EQU	<AssocQueryStringByKeyW>
else 
AssocQueryStringByKey	EQU	<AssocQueryStringByKeyA>
endif 
proto_AssocQueryKeyA typedef proto stdcall  :ASSOCF, :ASSOCKEY, :LPSTR, :LPSTR, :ptr HKEY
externdef stdcall _imp__AssocQueryKeyA@20: ptr proto_AssocQueryKeyA
AssocQueryKeyA equ <_imp__AssocQueryKeyA@20>
proto_AssocQueryKeyW typedef proto stdcall  :ASSOCF, :ASSOCKEY, :LPWSTR, :LPWSTR, :ptr HKEY
externdef stdcall _imp__AssocQueryKeyW@20: ptr proto_AssocQueryKeyW
AssocQueryKeyW equ <_imp__AssocQueryKeyW@20>
ifdef UNICODE
AssocQueryKey	EQU	<AssocQueryKeyW>
else 
AssocQueryKey	EQU	<AssocQueryKeyA>
endif 
endif 
ifndef NO_SHLWAPI_STREAM
proto_SHOpenRegStreamA typedef proto stdcall  :HKEY, :LPSTR, :LPSTR, :DWORD
externdef stdcall _imp__SHOpenRegStreamA@16: ptr proto_SHOpenRegStreamA
SHOpenRegStreamA equ <_imp__SHOpenRegStreamA@16>
proto_SHOpenRegStreamW typedef proto stdcall  :HKEY, :LPWSTR, :LPWSTR, :DWORD
externdef stdcall _imp__SHOpenRegStreamW@16: ptr proto_SHOpenRegStreamW
SHOpenRegStreamW equ <_imp__SHOpenRegStreamW@16>
ifdef UNICODE
SHOpenRegStream	EQU	<SHOpenRegStreamW>
else 
SHOpenRegStream	EQU	<SHOpenRegStreamA>
endif 
proto_SHOpenRegStream2A typedef proto stdcall  :HKEY, :LPSTR, :LPSTR, :DWORD
externdef stdcall _imp__SHOpenRegStream2A@16: ptr proto_SHOpenRegStream2A
SHOpenRegStream2A equ <_imp__SHOpenRegStream2A@16>
proto_SHOpenRegStream2W typedef proto stdcall  :HKEY, :LPWSTR, :LPWSTR, :DWORD
externdef stdcall _imp__SHOpenRegStream2W@16: ptr proto_SHOpenRegStream2W
SHOpenRegStream2W equ <_imp__SHOpenRegStream2W@16>
ifdef UNICODE
SHOpenRegStream2	EQU	<SHOpenRegStream2W>
else 
SHOpenRegStream2	EQU	<SHOpenRegStream2A>
endif 
;#undef SHOpenRegStream 
SHOpenRegStream	EQU	<SHOpenRegStream2>
proto_SHCreateStreamOnFileA typedef proto stdcall  :LPSTR, :DWORD, :ptr ptr IStream
externdef stdcall _imp__SHCreateStreamOnFileA@12: ptr proto_SHCreateStreamOnFileA
SHCreateStreamOnFileA equ <_imp__SHCreateStreamOnFileA@12>
proto_SHCreateStreamOnFileW typedef proto stdcall  :LPWSTR, :DWORD, :ptr ptr IStream
externdef stdcall _imp__SHCreateStreamOnFileW@12: ptr proto_SHCreateStreamOnFileW
SHCreateStreamOnFileW equ <_imp__SHCreateStreamOnFileW@12>
ifdef UNICODE
SHCreateStreamOnFile	EQU	<SHCreateStreamOnFileW>
else 
SHCreateStreamOnFile	EQU	<SHCreateStreamOnFileA>
endif 
if (_WIN32_IE ge 0600h)
proto_SHCreateStreamOnFileEx typedef proto stdcall  :LPWSTR, :DWORD, :DWORD, :BOOL, :ptr IStream, :ptr ptr IStream
externdef stdcall _imp__SHCreateStreamOnFileEx@24: ptr proto_SHCreateStreamOnFileEx
SHCreateStreamOnFileEx equ <_imp__SHCreateStreamOnFileEx@24>
endif 
endif 
if (_WIN32_IE ge 0500h)
SHACF_DEFAULT	EQU	00000000h
SHACF_FILESYSTEM	EQU	00000001h
SHACF_URLALL	EQU	<( SHACF_URLHISTORY  or  SHACF_URLMRU )>
SHACF_URLHISTORY	EQU	00000002h
SHACF_URLMRU	EQU	00000004h
SHACF_USETAB	EQU	00000008h
SHACF_FILESYS_ONLY	EQU	00000010h
if (_WIN32_IE ge 0600h)
SHACF_FILESYS_DIRS	EQU	00000020h
endif 
SHACF_AUTOSUGGEST_FORCE_ON	EQU	10000000h
SHACF_AUTOSUGGEST_FORCE_OFF	EQU	20000000h
SHACF_AUTOAPPEND_FORCE_ON	EQU	40000000h
SHACF_AUTOAPPEND_FORCE_OFF	EQU	80000000h
proto_SHAutoComplete typedef proto stdcall  :HWND, :DWORD
externdef stdcall _imp__SHAutoComplete@8: ptr proto_SHAutoComplete
SHAutoComplete equ <_imp__SHAutoComplete@8>
proto_SHSetThreadRef typedef proto stdcall  :ptr IUnknown
externdef stdcall _imp__SHSetThreadRef@4: ptr proto_SHSetThreadRef
SHSetThreadRef equ <_imp__SHSetThreadRef@4>
proto_SHGetThreadRef typedef proto stdcall  :ptr ptr IUnknown
externdef stdcall _imp__SHGetThreadRef@4: ptr proto_SHGetThreadRef
SHGetThreadRef equ <_imp__SHGetThreadRef@4>
proto_SHSkipJunction typedef proto stdcall  :ptr IBindCtx, :ptr CLSID
externdef stdcall _imp__SHSkipJunction@8: ptr proto_SHSkipJunction
SHSkipJunction equ <_imp__SHSkipJunction@8>
endif 
CTF_INSIST	EQU	00000001h
CTF_THREAD_REF	EQU	00000002h
CTF_PROCESS_REF	EQU	00000004h
CTF_COINIT	EQU	00000008h
CTF_FREELIBANDEXIT	EQU	00000010h
CTF_REF_COUNTED	EQU	00000020h
CTF_WAIT_ALLOWCOM	EQU	00000040h
proto_SHCreateThread typedef proto stdcall  :LPTHREAD_START_ROUTINE, :ptr , :DWORD, :LPTHREAD_START_ROUTINE
externdef stdcall _imp__SHCreateThread@16: ptr proto_SHCreateThread
SHCreateThread equ <_imp__SHCreateThread@16>
proto_SHReleaseThreadRef typedef proto stdcall 
externdef stdcall _imp__SHReleaseThreadRef@0: ptr proto_SHReleaseThreadRef
SHReleaseThreadRef equ <_imp__SHReleaseThreadRef@0>
ifndef NO_SHLWAPI_GDI
proto_SHCreateShellPalette typedef proto stdcall  :HDC
externdef stdcall _imp__SHCreateShellPalette@4: ptr proto_SHCreateShellPalette
SHCreateShellPalette equ <_imp__SHCreateShellPalette@4>
if (_WIN32_IE ge 0500h)
proto_ColorRGBToHLS typedef proto stdcall  :COLORREF, :ptr WORD, :ptr WORD, :ptr WORD
externdef stdcall _imp__ColorRGBToHLS@16: ptr proto_ColorRGBToHLS
ColorRGBToHLS equ <_imp__ColorRGBToHLS@16>
proto_ColorHLSToRGB typedef proto stdcall  :WORD, :WORD, :WORD
externdef stdcall _imp__ColorHLSToRGB@12: ptr proto_ColorHLSToRGB
ColorHLSToRGB equ <_imp__ColorHLSToRGB@12>
proto_ColorAdjustLuma typedef proto stdcall  :COLORREF, :DWORD, :BOOL
externdef stdcall _imp__ColorAdjustLuma@12: ptr proto_ColorAdjustLuma
ColorAdjustLuma equ <_imp__ColorAdjustLuma@12>
endif 
endif 
DLLVERSIONINFO	struct
cbSize	DWORD	?
dwMajorVersion	DWORD	?
dwMinorVersion	DWORD	?
dwBuildNumber	DWORD	?
dwPlatformID	DWORD	?
DLLVERSIONINFO	ends

DLLVER_PLATFORM_WINDOWS	EQU	00000001h
DLLVER_PLATFORM_NT	EQU	00000002h
if (_WIN32_IE ge 0501h)
DLLVERSIONINFO2	struct
info1	DLLVERSIONINFO	<>
dwFlags	DWORD	?
ullVersion	QWORD	?
DLLVERSIONINFO2	ends

DLLVER_MAJOR_MASK	EQU	0FFFF000000000000h
DLLVER_MINOR_MASK	EQU	0000FFFF00000000h
DLLVER_BUILD_MASK	EQU	00000000FFFF0000h
DLLVER_QFE_MASK	EQU	000000000000FFFFh
endif 
MAKEDLLVERULL macro major,minor,build,qfe
	exitm <( ( ( major )  shl  48 )  or  ( ( minor )  shl  32 )  or  ( ( build )  shl  16 )  or  ( ( qfe )  shl  0 ) ) >
	endm
proto_DLLGETVERSIONPROC typedef proto stdcall :ptr DLLVERSIONINFO
DLLGETVERSIONPROC typedef ptr proto_DLLGETVERSIONPROC
DllInstall proto stdcall  :BOOL, :LPWSTR
ifdef __cplusplus
;}
endif 
ifdef _WIN32
	include poppack.inc
endif 
endif 
endif 

;--- errors: 0
;--- end of file ---
