Geoff Chappell - Software Analyst
A significant expansion occurred with SHLWAPI version 4.71, for Internet Explorer 4.0 in 1997. Not counting ANSI and Unicode forms as distinct, there are 196 new functions. However, the overwhelming majority are exported only by ordinal.
All the named exports that first appeared in SHLWAPI version 4.71 are documented in the January 2007 edition of the Windows Vista SDK (and were also in the January 2004 edition of the MSDN Library on CD). As usual, however, the documentation is unreliable on the question of availability.
For one function, the documentation gives no availability and describes the function only as “not currently supported”. Yet as recently as Windows XP SP1, the function retained an admittedly simple but nonetheless non-trivial implementation and was still in use, being called from one place in BROWSEUI.DLL and two in SHELL32.DLL.
Function | Remarks |
---|---|
ChrCmpIA | |
ChrCmpIW | |
GetMenuPosFromID | |
HashData | documented as requiring “version 5.0 or later” |
PathCreateFromUrlA | documented as requiring “version 5.0 or later” |
PathCreateFromUrlW | documented as requiring “version 5.0 or later” |
PathGetCharTypeA | |
PathGetCharTypeW | |
PathIsContentTypeA | |
PathIsContentTypeW | |
PathIsSystemFolderA | |
PathIsSystemFolderW | |
PathIsUNCServerA | |
PathIsUNCServerW | |
PathIsUNCServerShareA | |
PathIsUNCServerShareW | |
PathMakeSystemFolderA | |
PathMakeSystemFolderW | |
PathUnmakeSystemFolderA | |
PathUnmakeSystemFolderW | |
SHCreateShellPalette | |
SHEnumKeyExA | |
SHEnumKeyExW | |
SHEnumValueA | |
SHEnumValueW | |
SHGetInverseCMAP | documented as requiring “version 5.0 or later” |
SHIsLowMemoryMachine | documented as “not currently supported” |
SHOpenRegStreamA | |
SHOpenRegStreamW | |
SHQueryInfoKeyA | |
SHQueryInfoKeyW | |
SHRegCloseUSKey | |
SHRegCreateUSKeyA | |
SHRegCreateUSKeyW | |
SHRegDeleteEmptyUSKeyA | |
SHRegDeleteEmptyUSKeyW | |
SHRegDeleteUSValueA | |
SHRegDeleteUSValueW | |
SHRegEnumUSKeyA | |
SHRegEnumUSKeyW | |
SHRegEnumUSValueA | |
SHRegEnumUSValueW | |
SHRegGetBoolUSValueA | |
SHRegGetBoolUSValueW | |
SHRegGetUSValueA | |
SHRegGetUSValueW | |
SHRegOpenUSKeyA | |
SHRegOpenUSKeyW | |
SHRegQueryInfoUSKeyA | |
SHRegQueryInfoUSKeyW | |
SHRegQueryUSValueA | |
SHRegQueryUSValueW | |
SHRegSetUSValueA | |
SHRegSetUSValueW | |
SHRegWriteUSValueA | |
SHRegWriteUSValueW | |
StrNCatA | |
StrNCatW | |
StrTrimA | |
StrTrimW | |
UrlApplySchemeA | documented as requiring “version 5.0 or later” |
UrlApplySchemeW | documented as requiring “version 5.0 or later” |
UrlCanonicalizeA | documented as requiring “version 5.0 or later” |
UrlCanonicalizeW | documented as requiring “version 5.0 or later” |
UrlCombineA | documented as requiring “version 5.0 or later” |
UrlCombineW | documented as requiring “version 5.0 or later” |
UrlCompareA | documented as requiring “version 5.0 or later” |
UrlCompareW | documented as requiring “version 5.0 or later” |
UrlCreateFromPathA | documented as requiring “version 5.0 or later” |
UrlCreateFromPathW | documented as requiring “version 5.0 or later” |
UrlEscapeA | documented as requiring “version 5.0 or later” |
UrlEscapeW | documented as requiring “version 5.0 or later” |
UrlGetLocationA | documented as requiring “version 5.0 or later” |
UrlGetLocationW | documented as requiring “version 5.0 or later” |
UrlGetPartA | documented as requiring “version 5.0 or later” |
UrlGetPartW | documented as requiring “version 5.0 or later” |
UrlHashA | documented as requiring “version 5.0 or later” |
UrlHashW | documented as requiring “version 5.0 or later” |
UrlIsA | documented as requiring “version 5.0 or later” |
UrlIsW | documented as requiring “version 5.0 or later” |
UrlIsNoHistoryA | documented as requiring “version 5.0 or later” |
UrlIsNoHistoryW | documented as requiring “version 5.0 or later” |
UrlIsOpaqueA | documented as requiring “version 5.0 or later” |
UrlIsOpaqueW | documented as requiring “version 5.0 or later” |
UrlUnescapeA | documented as requiring “version 5.0 or later” |
UrlUnescapeW | documented as requiring “version 5.0 or later” |