- Convert ordinals to their real names.

- Partially implement a few Assoc* functions.
This commit is contained in:
Robert Shearman 2003-09-11 02:56:15 +00:00 committed by Alexandre Julliard
parent 721dbf0b29
commit b6f34d3c3f
11 changed files with 798 additions and 614 deletions

View File

@ -60,6 +60,8 @@ typedef struct
{
ICOM_VFIELD(IQueryAssociations);
LONG ref;
HKEY hkeySource;
HKEY hkeyProgID;
} IQueryAssociationsImpl;
static struct ICOM_VTABLE(IQueryAssociations) IQueryAssociations_vtbl;
@ -76,6 +78,8 @@ static IQueryAssociations* IQueryAssociations_Constructor(void)
iface =(IQueryAssociationsImpl*)HeapAlloc(GetProcessHeap(),0,sizeof(IQueryAssociationsImpl));
iface->lpVtbl = &IQueryAssociations_vtbl;
iface->ref = 1;
iface->hkeySource = NULL;
iface->hkeyProgID = NULL;
TRACE("Returning IQueryAssociations* %p\n", iface);
return (IQueryAssociations*)iface;
@ -113,7 +117,7 @@ static BOOL SHLWAPI_ParamAToW(LPCSTR lpszParam, LPWSTR lpszBuff, DWORD dwLen,
}
/*************************************************************************
* AssocCreate [SHLWAPI.253]
* AssocCreate [SHLWAPI.@]
*
* Create a new IQueryAssociations object.
*
@ -156,7 +160,7 @@ HRESULT WINAPI AssocCreate(CLSID clsid, REFIID refiid, void **lpInterface)
}
/*************************************************************************
* AssocQueryKeyW [SHLWAPI.255]
* AssocQueryKeyW [SHLWAPI.@]
*
* See AssocQueryKeyA.
*/
@ -185,7 +189,7 @@ HRESULT WINAPI AssocQueryKeyW(ASSOCF cfFlags, ASSOCKEY assockey, LPCWSTR pszAsso
}
/*************************************************************************
* AssocQueryKeyA [SHLWAPI.254]
* AssocQueryKeyA [SHLWAPI.@]
*
* Get a file association key from the registry.
*
@ -226,7 +230,7 @@ HRESULT WINAPI AssocQueryKeyA(ASSOCF cfFlags, ASSOCKEY assockey, LPCSTR pszAssoc
}
/*************************************************************************
* AssocQueryStringW [SHLWAPI.384]
* AssocQueryStringW [SHLWAPI.@]
*
* See AssocQueryStringA.
*/
@ -259,7 +263,7 @@ HRESULT WINAPI AssocQueryStringW(ASSOCF cfFlags, ASSOCSTR str, LPCWSTR pszAssoc,
}
/*************************************************************************
* AssocQueryStringA [SHLWAPI.381]
* AssocQueryStringA [SHLWAPI.@]
*
* Get a file association string from the registry.
*
@ -321,7 +325,7 @@ HRESULT WINAPI AssocQueryStringA(ASSOCF cfFlags, ASSOCSTR str, LPCSTR pszAssoc,
}
/*************************************************************************
* AssocQueryStringByKeyW [SHLWAPI.383]
* AssocQueryStringByKeyW [SHLWAPI.@]
*
* See AssocQueryStringByKeyA.
*/
@ -352,7 +356,7 @@ HRESULT WINAPI AssocQueryStringByKeyW(ASSOCF cfFlags, ASSOCSTR str, HKEY hkAssoc
}
/*************************************************************************
* AssocQueryStringByKeyA [SHLWAPI.382]
* AssocQueryStringByKeyA [SHLWAPI.@]
*
* Get a file association string from the registry, given a starting key.
*
@ -486,11 +490,11 @@ static ULONG WINAPI IQueryAssociations_fnRelease(IQueryAssociations *iface)
* Initialise an IQueryAssociations object.
*
* PARAMS
* iface [I] IQueryAssociations interface to initialise
* cfFlags [I] ASSOCF_ flags from "shlwapi.h"
* pszAssoc [I] String for the root key name, or NULL if hkProgid is given
* hkProgid [I] Handle for the root key, or NULL if pszAssoc is given
* hWnd [I] Reserved, must be NULL.
* iface [I] IQueryAssociations interface to initialise
* cfFlags [I] ASSOCF_ flags from "shlwapi.h"
* pszAssoc [I] String for the root key name, or NULL if hkProgid is given
* hkeyProgid [I] Handle for the root key, or NULL if pszAssoc is given
* hWnd [I] Reserved, must be NULL.
*
* RETURNS
* Success: S_OK. iface is initialised with the parameters given.
@ -500,14 +504,53 @@ static HRESULT WINAPI IQueryAssociations_fnInit(
IQueryAssociations *iface,
ASSOCF cfFlags,
LPCWSTR pszAssoc,
HKEY hkProgid,
HKEY hkeyProgid,
HWND hWnd)
{
ICOM_THIS(IQueryAssociationsImpl, iface);
static const WCHAR szProgID[] = {'P','r','o','g','I','D',0};
ICOM_THIS(IQueryAssociationsImpl,iface);
HRESULT hr;
FIXME("(%p,0x%8lx,%s,%p,%p)-stub!\n", This, cfFlags,
debugstr_w(pszAssoc), hkProgid, hWnd);
return E_NOTIMPL;
TRACE("(%p)->(%ld,%s,%p,%p)\n", iface,
cfFlags,
debugstr_w(pszAssoc),
hkeyProgid,
hWnd);
if (hWnd != NULL)
FIXME("hwnd != NULL not supported\n");
if (cfFlags != 0)
FIXME("unsupported flags: %lx\n", cfFlags);
if (pszAssoc != NULL)
{
hr = RegOpenKeyExW(HKEY_CLASSES_ROOT,
pszAssoc,
0,
KEY_READ,
&This->hkeySource);
if (FAILED(hr))
return HRESULT_FROM_WIN32(ERROR_NO_ASSOCIATION);
/* if this is not a prog id */
if ((*pszAssoc == '.') || (*pszAssoc == '{'))
{
hr = RegOpenKeyExW(This->hkeySource,
szProgID,
0,
KEY_READ,
&This->hkeyProgID);
if (FAILED(hr))
FIXME("Don't know what to return\n");
}
else
This->hkeyProgID = This->hkeySource;
return S_OK;
}
else if (hkeyProgid != NULL)
{
This->hkeyProgID = hkeyProgid;
return S_OK;
}
else
return E_FAIL;
}
/**************************************************************************

View File

@ -40,7 +40,7 @@ typedef const SHLWAPI_CLIST* LPCSHLWAPI_CLIST;
/* ulId for contained SHLWAPI_CLIST items */
#define CLIST_ID_CONTAINER (~0UL)
HRESULT WINAPI SHLWAPI_20(LPSHLWAPI_CLIST*,LPCSHLWAPI_CLIST);
HRESULT WINAPI SHAddDataBlock(LPSHLWAPI_CLIST*,LPCSHLWAPI_CLIST);
/*************************************************************************
* NextItem
@ -73,17 +73,17 @@ inline static LPSHLWAPI_CLIST NextItem(LPCSHLWAPI_CLIST lpList)
*
* The exposed API consists of:
*
* SHLWAPI_17() Write a compact list to a stream,
* SHWriteDataBlockList - Write a compact list to a stream,
*
* SHLWAPI_18() Read and create a list from a stream,
* SHReadDataBlockList - Read and create a list from a stream,
*
* SHLWAPI_19() Free a list,
* SHFreeDataBlockList - Free a list,
*
* SHLWAPI_20() Insert a new item into a list,
* SHAddDataBlock - Insert a new item into a list,
*
* SHLWAPI_21() Remove an item from a list,
* SHRemoveDataBlock - Remove an item from a list,
*
* SHLWAPI_22() Find an item in a list.
* SHFindDataBlock - Find an item in a list.
*
* The compact list is stored packed into a memory array. Each element has a
* size and an associated ID. Elements must be less than 64k if the list is
@ -95,7 +95,7 @@ inline static LPSHLWAPI_CLIST NextItem(LPCSHLWAPI_CLIST lpList)
*
* These functions are slow for large objects and long lists.
*/
HRESULT WINAPI SHLWAPI_17(IStream* lpStream, LPSHLWAPI_CLIST lpList)
HRESULT WINAPI SHWriteDataBlockList(IStream* lpStream, LPSHLWAPI_CLIST lpList)
{
ULONG ulSize;
HRESULT hRet = E_FAIL;
@ -149,9 +149,9 @@ HRESULT WINAPI SHLWAPI_17(IStream* lpStream, LPSHLWAPI_CLIST lpList)
*
* NOTES
* When read from a file, list objects are limited in size to 64k.
* See SHLWAPI_17.
* See SHWriteDataBlockList.
*/
HRESULT WINAPI SHLWAPI_18(IStream* lpStream, LPSHLWAPI_CLIST* lppList)
HRESULT WINAPI SHReadDataBlockList(IStream* lpStream, LPSHLWAPI_CLIST* lppList)
{
SHLWAPI_CLIST bBuff[128]; /* Temporary storage for new list item */
ULONG ulBuffSize = sizeof(bBuff);
@ -223,7 +223,7 @@ HRESULT WINAPI SHLWAPI_18(IStream* lpStream, LPSHLWAPI_CLIST* lppList)
if(FAILED(hRet) || ulRead != ulSize)
break;
SHLWAPI_20(lppList, pItem); /* Insert Item */
SHAddDataBlock(lppList, pItem); /* Insert Item */
}
} while(1);
@ -246,9 +246,9 @@ HRESULT WINAPI SHLWAPI_18(IStream* lpStream, LPSHLWAPI_CLIST* lppList)
* Nothing.
*
* NOTES
* See SHLWAPI_17.
* See SHWriteDataBlockList.
*/
VOID WINAPI SHLWAPI_19(LPSHLWAPI_CLIST lpList)
VOID WINAPI SHFreeDataBlockList(LPSHLWAPI_CLIST lpList)
{
TRACE("(%p)\n", lpList);
@ -273,9 +273,9 @@ VOID WINAPI SHLWAPI_19(LPSHLWAPI_CLIST lpList)
* If the size of the element to be inserted is less than the size of a
* SHLWAPI_CLIST node, or the Id for the item is CLIST_ID_CONTAINER,
* the call returns S_OK but does not actually add the element.
* See SHLWAPI_17.
* See SHWriteDataBlockList.
*/
HRESULT WINAPI SHLWAPI_20(LPSHLWAPI_CLIST* lppList, LPCSHLWAPI_CLIST lpNewItem)
HRESULT WINAPI SHAddDataBlock(LPSHLWAPI_CLIST* lppList, LPCSHLWAPI_CLIST lpNewItem)
{
LPSHLWAPI_CLIST lpInsertAt = NULL;
ULONG ulSize;
@ -365,9 +365,9 @@ HRESULT WINAPI SHLWAPI_20(LPSHLWAPI_CLIST* lppList, LPCSHLWAPI_CLIST lpNewItem)
* Failure: FALSE, If any parameters are invalid, or the item was not found.
*
* NOTES
* See SHLWAPI_17.
* See SHWriteDataBlockList.
*/
BOOL WINAPI SHLWAPI_21(LPSHLWAPI_CLIST* lppList, ULONG ulId)
BOOL WINAPI SHRemoveDataBlock(LPSHLWAPI_CLIST* lppList, ULONG ulId)
{
LPSHLWAPI_CLIST lpList = 0;
LPSHLWAPI_CLIST lpItem = NULL;
@ -435,9 +435,9 @@ BOOL WINAPI SHLWAPI_21(LPSHLWAPI_CLIST* lppList, ULONG ulId)
* Failure: NULL
*
* NOTES
* See SHLWAPI_17.
* See SHWriteDataBlockList.
*/
LPSHLWAPI_CLIST WINAPI SHLWAPI_22(LPSHLWAPI_CLIST lpList, ULONG ulId)
LPSHLWAPI_CLIST WINAPI SHFindDataBlock(LPSHLWAPI_CLIST lpList, ULONG ulId)
{
TRACE("(%p,%ld)\n", lpList, ulId);

View File

@ -557,7 +557,7 @@ HRESULT WINAPI SHLWAPI_184(IStream *lpStream, LPVOID lpvDest, ULONG ulSize)
* TRUE: If the stream has 0 length
* FALSE: Otherwise.
*/
BOOL WINAPI SHLWAPI_166(IStream *lpStream)
BOOL WINAPI SHIsEmptyStream(IStream *lpStream)
{
STATSTG statstg;
BOOL bRet = TRUE;
@ -630,7 +630,7 @@ HRESULT WINAPI SHLWAPI_212(IStream *lpStream, LPCVOID lpvSrc, ULONG ulSize)
* Success: S_OK. The current position within the stream is updated
* Failure: An HRESULT error code.
*/
HRESULT WINAPI SHLWAPI_213(IStream *lpStream)
HRESULT WINAPI IStream_Reset(IStream *lpStream)
{
LARGE_INTEGER zero;
TRACE("(%p)\n", lpStream);
@ -651,7 +651,7 @@ HRESULT WINAPI SHLWAPI_213(IStream *lpStream)
* Success: S_OK. lpulSize contains the size of the stream.
* Failure: An HRESULT error code.
*/
HRESULT WINAPI SHLWAPI_214(IStream *lpStream, ULARGE_INTEGER* lpulSize)
HRESULT WINAPI IStream_Size(IStream *lpStream, ULARGE_INTEGER* lpulSize)
{
STATSTG statstg;
HRESULT hRet;

File diff suppressed because it is too large Load Diff

View File

@ -55,7 +55,7 @@ extern HMODULE SHLWAPI_hshell32;
typedef BOOL (WINAPI *fnpIsNetDrive)(int);
static fnpIsNetDrive pIsNetDrive;
HRESULT WINAPI SHLWAPI_441(LPCWSTR,LPWSTR,DWORD);
HRESULT WINAPI SHGetWebFolderFilePathW(LPCWSTR,LPWSTR,DWORD);
/*************************************************************************
* PathAppendA [SHLWAPI.@]
@ -1052,9 +1052,9 @@ int WINAPI PathParseIconLocationW(LPWSTR lpszPath)
/*************************************************************************
* @ [SHLWAPI.4]
*
* Unicode version of SHLWAPI_3.
* Unicode version of PathFileExistsDefExtA.
*/
BOOL WINAPI SHLWAPI_4(LPWSTR lpszPath,DWORD dwWhich)
BOOL WINAPI PathFileExistsDefExtW(LPWSTR lpszPath,DWORD dwWhich)
{
static const WCHAR pszExts[7][5] = { { '.', 'p', 'i', 'f', 0},
{ '.', 'c', 'o', 'm', 0},
@ -1116,7 +1116,7 @@ BOOL WINAPI SHLWAPI_4(LPWSTR lpszPath,DWORD dwWhich)
* users (here through PathFindOnPathA()) and keeping advanced functionality for
* their own developers exclusive use. Monopoly, anyone?
*/
BOOL WINAPI SHLWAPI_3(LPSTR lpszPath,DWORD dwWhich)
BOOL WINAPI PathFileExistsDefExtA(LPSTR lpszPath,DWORD dwWhich)
{
BOOL bRet = FALSE;
@ -1126,7 +1126,7 @@ BOOL WINAPI SHLWAPI_3(LPSTR lpszPath,DWORD dwWhich)
{
WCHAR szPath[MAX_PATH];
MultiByteToWideChar(0,0,lpszPath,-1,szPath,MAX_PATH);
bRet = SHLWAPI_4(szPath, dwWhich);
bRet = PathFileExistsDefExtW(szPath, dwWhich);
if (bRet)
WideCharToMultiByte(0,0,szPath,-1,lpszPath,MAX_PATH,0,0);
}
@ -1153,7 +1153,7 @@ static BOOL WINAPI SHLWAPI_PathFindInOtherDirs(LPWSTR lpszFile, DWORD dwWhich)
GetSystemDirectoryW(buff, MAX_PATH);
if (!PathAppendW(buff, lpszFile))
return FALSE;
if (SHLWAPI_4(buff, dwWhich))
if (PathFileExistsDefExtW(buff, dwWhich))
{
strcpyW(lpszFile, buff);
return TRUE;
@ -1161,7 +1161,7 @@ static BOOL WINAPI SHLWAPI_PathFindInOtherDirs(LPWSTR lpszFile, DWORD dwWhich)
GetWindowsDirectoryW(buff, MAX_PATH);
if (!PathAppendW(buff, szSystem ) || !PathAppendW(buff, lpszFile))
return FALSE;
if (SHLWAPI_4(buff, dwWhich))
if (PathFileExistsDefExtW(buff, dwWhich))
{
strcpyW(lpszFile, buff);
return TRUE;
@ -1169,7 +1169,7 @@ static BOOL WINAPI SHLWAPI_PathFindInOtherDirs(LPWSTR lpszFile, DWORD dwWhich)
GetWindowsDirectoryW(buff, MAX_PATH);
if (!PathAppendW(buff, lpszFile))
return FALSE;
if (SHLWAPI_4(buff, dwWhich))
if (PathFileExistsDefExtW(buff, dwWhich))
{
strcpyW(lpszFile, buff);
return TRUE;
@ -1200,7 +1200,7 @@ static BOOL WINAPI SHLWAPI_PathFindInOtherDirs(LPWSTR lpszFile, DWORD dwWhich)
if (!PathAppendW(buff, lpszFile))
return FALSE;
if (SHLWAPI_4(buff, dwWhich))
if (PathFileExistsDefExtW(buff, dwWhich))
{
strcpyW(lpszFile, buff);
free(lpszPATH);
@ -1225,7 +1225,7 @@ static BOOL WINAPI SHLWAPI_PathFindInOtherDirs(LPWSTR lpszFile, DWORD dwWhich)
* Success: TRUE. The path to the executable is stored in lpszFile.
* Failure: FALSE. The path to the executable is unchanged.
*/
BOOL WINAPI SHLWAPI_5(LPSTR lpszFile,LPCSTR *lppszOtherDirs,DWORD dwWhich)
BOOL WINAPI PathFindOnPathExA(LPSTR lpszFile,LPCSTR *lppszOtherDirs,DWORD dwWhich)
{
WCHAR szFile[MAX_PATH];
WCHAR buff[MAX_PATH];
@ -1247,7 +1247,7 @@ BOOL WINAPI SHLWAPI_5(LPSTR lpszFile,LPCSTR *lppszOtherDirs,DWORD dwWhich)
{
MultiByteToWideChar(0,0,*lpszOtherPath,-1,szOther,MAX_PATH);
PathCombineW(buff, szOther, szFile);
if (SHLWAPI_4(buff, dwWhich))
if (PathFileExistsDefExtW(buff, dwWhich))
{
WideCharToMultiByte(0,0,buff,-1,lpszFile,MAX_PATH,0,0);
return TRUE;
@ -1267,9 +1267,9 @@ BOOL WINAPI SHLWAPI_5(LPSTR lpszFile,LPCSTR *lppszOtherDirs,DWORD dwWhich)
/*************************************************************************
* @ [SHLWAPI.6]
*
* Unicode version of SHLWAPI_5.
* Unicode version of PathFindOnPathExA.
*/
BOOL WINAPI SHLWAPI_6(LPWSTR lpszFile,LPCWSTR *lppszOtherDirs,DWORD dwWhich)
BOOL WINAPI PathFindOnPathExW(LPWSTR lpszFile,LPCWSTR *lppszOtherDirs,DWORD dwWhich)
{
WCHAR buff[MAX_PATH];
@ -1285,7 +1285,7 @@ BOOL WINAPI SHLWAPI_6(LPWSTR lpszFile,LPCWSTR *lppszOtherDirs,DWORD dwWhich)
while (lpszOtherPath && *lpszOtherPath && (*lpszOtherPath)[0])
{
PathCombineW(buff, *lpszOtherPath, lpszFile);
if (SHLWAPI_4(buff, dwWhich))
if (PathFileExistsDefExtW(buff, dwWhich))
{
strcpyW(lpszFile, buff);
return TRUE;
@ -1313,7 +1313,7 @@ BOOL WINAPI SHLWAPI_6(LPWSTR lpszFile,LPCWSTR *lppszOtherDirs,DWORD dwWhich)
BOOL WINAPI PathFindOnPathA(LPSTR lpszFile, LPCSTR *lppszOtherDirs)
{
TRACE("(%s,%p)\n", debugstr_a(lpszFile), lppszOtherDirs);
return SHLWAPI_5(lpszFile, lppszOtherDirs, 0);
return PathFindOnPathExA(lpszFile, lppszOtherDirs, 0);
}
/*************************************************************************
@ -1324,7 +1324,7 @@ BOOL WINAPI PathFindOnPathA(LPSTR lpszFile, LPCSTR *lppszOtherDirs)
BOOL WINAPI PathFindOnPathW(LPWSTR lpszFile, LPCWSTR *lppszOtherDirs)
{
TRACE("(%s,%p)\n", debugstr_w(lpszFile), lppszOtherDirs);
return SHLWAPI_6(lpszFile,lppszOtherDirs, 0);
return PathFindOnPathExW(lpszFile,lppszOtherDirs, 0);
}
/*************************************************************************
@ -3816,7 +3816,7 @@ VOID WINAPI PathUndecorateW(LPWSTR lpszPath)
}
/*************************************************************************
* SHLWAPI_440 [SHLWAPI.440]
* @ [SHLWAPI.440]
*
* Find localised or default web content in "%WINDOWS%\web\".
*
@ -3829,7 +3829,7 @@ VOID WINAPI PathUndecorateW(LPWSTR lpszPath)
* Success: S_OK. lpszPath contains the full path to the content.
* Failure: E_FAIL. The content does not exist or lpszPath is too short.
*/
HRESULT WINAPI SHLWAPI_440(LPCSTR lpszFile, LPSTR lpszPath, DWORD dwPathLen)
HRESULT WINAPI SHGetWebFolderFilePathA(LPCSTR lpszFile, LPSTR lpszPath, DWORD dwPathLen)
{
WCHAR szFile[MAX_PATH], szPath[MAX_PATH];
HRESULT hRet;
@ -3838,17 +3838,17 @@ HRESULT WINAPI SHLWAPI_440(LPCSTR lpszFile, LPSTR lpszPath, DWORD dwPathLen)
MultiByteToWideChar(0, 0, lpszFile, -1, szFile, MAX_PATH);
szPath[0] = '\0';
hRet = SHLWAPI_441(szFile, szPath, dwPathLen);
hRet = SHGetWebFolderFilePathW(szFile, szPath, dwPathLen);
WideCharToMultiByte(0, 0, szPath, -1, lpszPath, dwPathLen, 0, 0);
return hRet;
}
/*************************************************************************
* SHLWAPI_441 [SHLWAPI.441]
* @ [SHLWAPI.441]
*
* Unicode version of SHLWAPI_440.
* Unicode version of SHGetWebFolderFilePathA.
*/
HRESULT WINAPI SHLWAPI_441(LPCWSTR lpszFile, LPWSTR lpszPath, DWORD dwPathLen)
HRESULT WINAPI SHGetWebFolderFilePathW(LPCWSTR lpszFile, LPWSTR lpszPath, DWORD dwPathLen)
{
static const WCHAR szWeb[] = {'\\','W','e','b','\\','\0'};
static const WCHAR szWebMui[] = {'m','u','i','\\','%','0','4','x','\\','\0'};

View File

@ -53,8 +53,8 @@ typedef struct {
WCHAR key_string[MAX_PATH]; /* additional path from 'start' */
} Internal_HUSKEY, *LPInternal_HUSKEY;
DWORD WINAPI SHLWAPI_24(REFGUID,LPWSTR,INT);
HRESULT WINAPI SHLWAPI_344(REFGUID,LPCWSTR,BOOL,BOOL,PHKEY);
DWORD WINAPI SHStringFromGUIDW(REFGUID,LPWSTR,INT);
HRESULT WINAPI SHRegGetCLSIDKeyW(REFGUID,LPCWSTR,BOOL,BOOL,PHKEY);
#define REG_HKCU TRUE
@ -1675,7 +1675,7 @@ LONG WINAPI SHEnumValueW(HKEY hKey, DWORD dwIndex, LPWSTR lpszValue,
* Failure: An error code from RegOpenKeyExA() or SHQueryValueExA(),
* or ERROR_INVALID_FUNCTION in the machine is in safe mode.
*/
DWORD WINAPI SHLWAPI_205(HKEY hkey, LPCSTR pSubKey, LPCSTR pValue,
DWORD WINAPI SHGetValueGoodBootA(HKEY hkey, LPCSTR pSubKey, LPCSTR pValue,
LPDWORD pwType, LPVOID pvData, LPDWORD pbData)
{
if (GetSystemMetrics(SM_CLEANBOOT))
@ -1686,9 +1686,9 @@ DWORD WINAPI SHLWAPI_205(HKEY hkey, LPCSTR pSubKey, LPCSTR pValue,
/*************************************************************************
* @ [SHLWAPI.206]
*
* Unicode version of SHLWAPI_205.
* Unicode version of SHGetValueGoodBootW.
*/
DWORD WINAPI SHLWAPI_206(HKEY hkey, LPCWSTR pSubKey, LPCWSTR pValue,
DWORD WINAPI SHGetValueGoodBootW(HKEY hkey, LPCWSTR pSubKey, LPCWSTR pValue,
LPDWORD pwType, LPVOID pvData, LPDWORD pbData)
{
if (GetSystemMetrics(SM_CLEANBOOT))
@ -1709,7 +1709,7 @@ DWORD WINAPI SHLWAPI_206(HKEY hkey, LPCWSTR pSubKey, LPCWSTR pValue,
* Success: TRUE
* Failure: FALSE
*/
BOOL WINAPI SHLWAPI_320(LPCSTR lpszSubKey, LPCSTR lpszValue)
BOOL WINAPI RegisterMIMETypeForExtensionA(LPCSTR lpszSubKey, LPCSTR lpszValue)
{
DWORD dwRet;
@ -1727,9 +1727,9 @@ BOOL WINAPI SHLWAPI_320(LPCSTR lpszSubKey, LPCSTR lpszValue)
/*************************************************************************
* @ [SHLWAPI.321]
*
* Unicode version of SHLWAPI_320.
* Unicode version of RegisterMIMETypeForExtensionA.
*/
BOOL WINAPI SHLWAPI_321(LPCWSTR lpszSubKey, LPCWSTR lpszValue)
BOOL WINAPI RegisterMIMETypeForExtensionW(LPCWSTR lpszSubKey, LPCWSTR lpszValue)
{
DWORD dwRet;
@ -1756,7 +1756,7 @@ BOOL WINAPI SHLWAPI_321(LPCWSTR lpszSubKey, LPCWSTR lpszValue)
* Success: TRUE
* Failure: FALSE
*/
BOOL WINAPI SHLWAPI_322(LPCSTR lpszSubKey)
BOOL WINAPI UnregisterMIMETypeForExtensionA(LPCSTR lpszSubKey)
{
HRESULT ret = SHDeleteValueA(HKEY_CLASSES_ROOT, lpszSubKey, lpszContentTypeA);
return ret ? FALSE : TRUE;
@ -1765,9 +1765,9 @@ BOOL WINAPI SHLWAPI_322(LPCSTR lpszSubKey)
/*************************************************************************
* @ [SHLWAPI.323]
*
* Unicode version of SHLWAPI_322.
* Unicode version of UnregisterMIMETypeForExtensionA.
*/
BOOL WINAPI SHLWAPI_323(LPCWSTR lpszSubKey)
BOOL WINAPI UnregisterMIMETypeForExtensionW(LPCWSTR lpszSubKey)
{
HRESULT ret = SHDeleteValueW(HKEY_CLASSES_ROOT, lpszSubKey, lpszContentTypeW);
return ret ? FALSE : TRUE;
@ -1790,7 +1790,7 @@ BOOL WINAPI SHLWAPI_323(LPCWSTR lpszSubKey)
* NOTES
* The base path for the key is "MIME\Database\Content Type\"
*/
BOOL WINAPI SHLWAPI_328(LPCSTR lpszType, LPSTR lpszBuffer, DWORD dwLen)
BOOL WINAPI GetMIMETypeSubKeyA(LPCSTR lpszType, LPSTR lpszBuffer, DWORD dwLen)
{
TRACE("(%s,%p,%ld)\n", debugstr_a(lpszType), lpszBuffer, dwLen);
@ -1811,9 +1811,9 @@ BOOL WINAPI SHLWAPI_328(LPCSTR lpszType, LPSTR lpszBuffer, DWORD dwLen)
/*************************************************************************
* @ [SHLWAPI.329]
*
* Unicode version of SHLWAPI_328.
* Unicode version of GetMIMETypeSubKeyA.
*/
BOOL WINAPI SHLWAPI_329(LPCWSTR lpszType, LPWSTR lpszBuffer, DWORD dwLen)
BOOL WINAPI GetMIMETypeSubKeyW(LPCWSTR lpszType, LPWSTR lpszBuffer, DWORD dwLen)
{
TRACE("(%s,%p,%ld)\n", debugstr_w(lpszType), lpszBuffer, dwLen);
@ -1844,14 +1844,14 @@ BOOL WINAPI SHLWAPI_329(LPCWSTR lpszType, LPWSTR lpszBuffer, DWORD dwLen)
* Success: TRUE. The file extension is set in the registry.
* Failure: FALSE.
*/
BOOL WINAPI SHLWAPI_324(LPCSTR lpszExt, LPCSTR lpszType)
BOOL WINAPI RegisterExtensionForMIMETypeA(LPCSTR lpszExt, LPCSTR lpszType)
{
DWORD dwLen;
char szKey[MAX_PATH];
TRACE("(%s,%s)\n", debugstr_a(lpszExt), debugstr_a(lpszType));
if (!SHLWAPI_328(lpszType, szKey, MAX_PATH)) /* Get full path to the key */
if (!GetMIMETypeSubKeyA(lpszType, szKey, MAX_PATH)) /* Get full path to the key */
return FALSE;
dwLen = strlen(lpszExt) + 1;
@ -1864,9 +1864,9 @@ BOOL WINAPI SHLWAPI_324(LPCSTR lpszExt, LPCSTR lpszType)
/*************************************************************************
* @ [SHLWAPI.325]
*
* Unicode version of SHLWAPI_324.
* Unicode version of RegisterExtensionForMIMETypeA.
*/
BOOL WINAPI SHLWAPI_325(LPCWSTR lpszExt, LPCWSTR lpszType)
BOOL WINAPI RegisterExtensionForMIMETypeW(LPCWSTR lpszExt, LPCWSTR lpszType)
{
DWORD dwLen;
WCHAR szKey[MAX_PATH];
@ -1874,7 +1874,7 @@ BOOL WINAPI SHLWAPI_325(LPCWSTR lpszExt, LPCWSTR lpszType)
TRACE("(%s,%s)\n", debugstr_w(lpszExt), debugstr_w(lpszType));
/* Get the full path to the key */
if (!SHLWAPI_329(lpszType, szKey, MAX_PATH)) /* Get full path to the key */
if (!GetMIMETypeSubKeyW(lpszType, szKey, MAX_PATH)) /* Get full path to the key */
return FALSE;
dwLen = (lstrlenW(lpszExt) + 1) * sizeof(WCHAR);
@ -1899,13 +1899,13 @@ BOOL WINAPI SHLWAPI_325(LPCWSTR lpszExt, LPCWSTR lpszType)
* NOTES
* If deleting the extension leaves an orphan key, the key is removed also.
*/
BOOL WINAPI SHLWAPI_326(LPCSTR lpszType)
BOOL WINAPI UnregisterExtensionForMIMETypeA(LPCSTR lpszType)
{
char szKey[MAX_PATH];
TRACE("(%s)\n", debugstr_a(lpszType));
if (!SHLWAPI_328(lpszType, szKey, MAX_PATH)) /* Get full path to the key */
if (!GetMIMETypeSubKeyA(lpszType, szKey, MAX_PATH)) /* Get full path to the key */
return FALSE;
if (!SHDeleteValueA(HKEY_CLASSES_ROOT, szKey, szExtensionA))
@ -1919,15 +1919,15 @@ BOOL WINAPI SHLWAPI_326(LPCSTR lpszType)
/*************************************************************************
* @ [SHLWAPI.327]
*
* Unicode version of SHLWAPI_326.
* Unicode version of UnregisterExtensionForMIMETypeA.
*/
BOOL WINAPI SHLWAPI_327(LPCWSTR lpszType)
BOOL WINAPI UnregisterExtensionForMIMETypeW(LPCWSTR lpszType)
{
WCHAR szKey[MAX_PATH];
TRACE("(%s)\n", debugstr_w(lpszType));
if (!SHLWAPI_329(lpszType, szKey, MAX_PATH)) /* Get full path to the key */
if (!GetMIMETypeSubKeyW(lpszType, szKey, MAX_PATH)) /* Get full path to the key */
return FALSE;
if (!SHDeleteValueW(HKEY_CLASSES_ROOT, szKey, szExtensionW))
@ -2096,7 +2096,7 @@ DWORD WINAPI SHCopyKeyW(HKEY hKeyDst, LPCWSTR lpszSubKey, HKEY hKeySrc, DWORD dw
*/
/*************************************************************************
* SHLWAPI_280 [SHLWAPI.280]
* @ [SHLWAPI.280]
*
* Read an integer value from the registry, falling back to a default.
*
@ -2109,7 +2109,7 @@ DWORD WINAPI SHCopyKeyW(HKEY hKeyDst, LPCWSTR lpszSubKey, HKEY hKeySrc, DWORD dw
* The value contained in the given registry value if present, otherwise
* iDefault.
*/
int WINAPI SHLWAPI_280(HKEY hKey, LPCWSTR lpszValue, int iDefault)
int WINAPI SHRegGetIntW(HKEY hKey, LPCWSTR lpszValue, int iDefault)
{
TRACE("(%p,%s,%d)", hKey, debugstr_w(lpszValue), iDefault);
@ -2127,7 +2127,7 @@ int WINAPI SHLWAPI_280(HKEY hKey, LPCWSTR lpszValue, int iDefault)
}
/*************************************************************************
* SHLWAPI_343 [SHLWAPI.343]
* @ [SHLWAPI.343]
*
* Create or open an explorer ClassId Key.
*
@ -2142,22 +2142,22 @@ int WINAPI SHLWAPI_280(HKEY hKey, LPCWSTR lpszValue, int iDefault)
* Success: S_OK. phKey contains the resulting registry handle.
* Failure: An HRESULT error code indicating the problem.
*/
HRESULT WINAPI SHLWAPI_343(REFGUID guid, LPCSTR lpszValue, BOOL bUseHKCU, BOOL bCreate, PHKEY phKey)
HRESULT WINAPI SHRegGetCLSIDKeyA(REFGUID guid, LPCSTR lpszValue, BOOL bUseHKCU, BOOL bCreate, PHKEY phKey)
{
WCHAR szValue[MAX_PATH];
if (lpszValue)
MultiByteToWideChar(CP_ACP, 0, lpszValue, -1, szValue, sizeof(szValue)/sizeof(WCHAR));
return SHLWAPI_344(guid, lpszValue ? szValue : NULL, bUseHKCU, bCreate, phKey);
return SHRegGetCLSIDKeyW(guid, lpszValue ? szValue : NULL, bUseHKCU, bCreate, phKey);
}
/*************************************************************************
* SHLWAPI_344 [SHLWAPI.344]
* @ [SHLWAPI.344]
*
* Unicode version of SHLWAPI_343.
* Unicode version of SHRegGetCLSIDKeyA.
*/
HRESULT WINAPI SHLWAPI_344(REFGUID guid, LPCWSTR lpszValue, BOOL bUseHKCU,
HRESULT WINAPI SHRegGetCLSIDKeyW(REFGUID guid, LPCWSTR lpszValue, BOOL bUseHKCU,
BOOL bCreate, PHKEY phKey)
{
static const WCHAR szClassIdKey[] = { 'S','o','f','t','w','a','r','e','\\',
@ -2171,7 +2171,7 @@ HRESULT WINAPI SHLWAPI_344(REFGUID guid, LPCWSTR lpszValue, BOOL bUseHKCU,
/* Create the key string */
memcpy(szKey, szClassIdKey, sizeof(szClassIdKey));
SHLWAPI_24(guid, szKey + szClassIdKeyLen, 39); /* Append guid */
SHStringFromGUIDW(guid, szKey + szClassIdKeyLen, 39); /* Append guid */
if(lpszValue)
{

View File

@ -485,7 +485,7 @@ IStream * WINAPI SHOpenRegStreamW(HKEY hkey, LPCWSTR pszSubkey,
* A copy of the memory pointed to by lpbData is made, and is freed
* when the stream is released.
*/
IStream * WINAPI SHLWAPI_12(LPBYTE lpbData, DWORD dwDataLen)
IStream * WINAPI SHCreateMemStream(LPBYTE lpbData, DWORD dwDataLen)
{
IStream *iStrmRet = NULL;

View File

@ -1,39 +1,39 @@
1 stdcall @(str ptr) SHLWAPI_1
2 stdcall @(wstr ptr) SHLWAPI_2
3 stdcall @(str long) SHLWAPI_3
4 stdcall @(wstr long) SHLWAPI_4
5 stdcall @(str ptr long) SHLWAPI_5
6 stdcall @(wstr ptr long) SHLWAPI_6
7 stdcall @(long long ptr) SHLWAPI_7
8 stdcall @(long long) SHLWAPI_8
9 stdcall @(ptr) SHLWAPI_9
10 stdcall @(long long) SHLWAPI_10
11 stdcall @(long long long long long) SHLWAPI_11
12 stdcall @(ptr long) SHLWAPI_12
13 stdcall @(ptr ptr) SHLWAPI_13
14 stdcall @(ptr ptr) SHLWAPI_14
15 stdcall @(ptr ptr) SHLWAPI_15
1 stdcall @(str ptr) ParseURLA
2 stdcall @(wstr ptr) ParseURLW
3 stdcall @(str long) PathFileExistsDefExtA
4 stdcall @(wstr long) PathFileExistsDefExtW
5 stdcall @(str ptr long) PathFindOnPathExA
6 stdcall @(wstr ptr long) PathFindOnPathExW
7 stdcall @(long long ptr) SHAllocShared
8 stdcall @(long long) SHLockShared
9 stdcall @(ptr) SHUnlockShared
10 stdcall @(long long) SHFreeShared
11 stdcall @(long long long long long) SHMapHandle
12 stdcall @(ptr long) SHCreateMemStream
13 stdcall @(ptr ptr) RegisterDefaultAcceptHeaders
14 stdcall @(ptr ptr) GetAcceptLanguagesA
15 stdcall @(ptr ptr) GetAcceptLanguagesW
16 stdcall SHCreateThread(ptr ptr long ptr)
17 stdcall @ (ptr ptr) SHLWAPI_17
18 stdcall @ (ptr ptr) SHLWAPI_18
19 stdcall @ (ptr) SHLWAPI_19
20 stdcall @ (ptr ptr) SHLWAPI_20
21 stdcall @ (ptr long) SHLWAPI_21
22 stdcall @ (ptr long) SHLWAPI_22
23 stdcall @(ptr ptr long) SHLWAPI_23
24 stdcall @(ptr ptr long) SHLWAPI_24
25 stdcall @(long) SHLWAPI_25
26 stdcall @(long) SHLWAPI_26
27 stdcall @(long) SHLWAPI_27
28 stdcall @(long) SHLWAPI_28
29 stdcall @(long) SHLWAPI_29
30 stdcall @(long) SHLWAPI_30
31 stdcall @(long) SHLWAPI_31
32 stdcall @(ptr) SHLWAPI_32
33 stdcall @(long) SHLWAPI_33
34 stdcall @(long) SHLWAPI_34
35 stdcall @(ptr long ptr) SHLWAPI_35
36 stdcall @(long long long wstr) SHLWAPI_36
17 stdcall @ (ptr ptr) SHWriteDataBlockList
18 stdcall @ (ptr ptr) SHReadDataBlockList
19 stdcall @ (ptr) SHFreeDataBlockList
20 stdcall @ (ptr ptr) SHAddDataBlock
21 stdcall @ (ptr long) SHRemoveDataBlock
22 stdcall @ (ptr long) SHFindDataBlock
23 stdcall @(ptr ptr long) SHStringFromGUIDA
24 stdcall @(ptr ptr long) SHStringFromGUIDW
25 stdcall @(long) IsCharAlphaWrapW
26 stdcall @(long) IsCharUpperWrapW
27 stdcall @(long) IsCharLowerWrapW
28 stdcall @(long) IsCharAlphaNumericWrapW
29 stdcall @(long) IsCharSpaceW
30 stdcall @(long) IsCharBlankW
31 stdcall @(long) IsCharPunctW
32 stdcall @(ptr) IsCharCntrlW
33 stdcall @(long) IsCharDigitW
34 stdcall @(long) IsCharXDigitW
35 stdcall @(ptr long ptr) GetStringType3ExW
36 stdcall @(long long long wstr) AppendMenuWrapW
37 stdcall @(ptr long long long long) user32.CallWindowProcW
38 stdcall @(wstr) user32.CharLowerW
39 stdcall @(wstr long) user32.CharLowerBuffW
@ -71,7 +71,7 @@
71 stdcall @(long ptr long) user32.GetClassNameW
72 stdcall @(long ptr long) user32.GetClipboardFormatNameW
73 stdcall @(long ptr) kernel32.GetCurrentDirectoryW
74 stdcall @(long long wstr long) SHLWAPI_74
74 stdcall -noname GetDlgItemTextWrapW(long long wstr long)
75 stdcall @(wstr) kernel32.GetFileAttributesW
76 stdcall @(wstr long ptr ptr) kernel32.GetFullPathNameW
77 stdcall @(long long ptr long) kernel32.GetLocaleInfoW
@ -135,7 +135,7 @@
135 stdcall @(long long long long long) user32.SendDlgItemMessageW
136 stdcall @(long long long long) user32.SendMessageW
137 stdcall @(wstr) kernel32.SetCurrentDirectoryW
138 stdcall @(long long wstr) SHLWAPI_138
138 stdcall -noname SetDlgItemTextWrapW(long long wstr)
139 stdcall @(long long long ptr) user32.SetMenuItemInfoW
140 stdcall @(long wstr long) user32.SetPropW
141 stdcall @(long long long) user32.SetWindowLongW
@ -148,155 +148,155 @@
148 stdcall @(long) user32.VkKeyScanW
149 stdcall @(long wstr long long) user32.WinHelpW
150 stdcall @(ptr wstr ptr) user32.wvsprintfW
151 stdcall @(str ptr long) SHLWAPI_151
152 stdcall @(wstr wstr long) SHLWAPI_152
153 stdcall @(long long long) SHLWAPI_153
154 stdcall @(wstr wstr long) SHLWAPI_154
155 stdcall @(str str) SHLWAPI_155
156 stdcall @(wstr wstr) SHLWAPI_156
157 stdcall @(str str) SHLWAPI_157
158 stdcall @(wstr wstr) SHLWAPI_158
151 stdcall @(str ptr long) StrCmpNCA
152 stdcall @(wstr wstr long) StrCmpNCW
153 stdcall @(long long long) StrCmpNICA
154 stdcall @(wstr wstr long) StrCmpNICW
155 stdcall @(str str) StrCmpCA
156 stdcall @(wstr wstr) StrCmpCW
157 stdcall @(str str) StrCmpICA
158 stdcall @(wstr wstr) StrCmpICW
159 stdcall @(long long wstr long wstr long) kernel32.CompareStringW
160 stdcall -noname SHLWAPI_160(ptr long)
161 stdcall -noname SHLWAPI_161(ptr long)
162 stdcall @(str long) SHLWAPI_162
163 stdcall @(ptr ptr long ptr ptr) SHLWAPI_163
164 stdcall @(ptr ptr long long ptr ptr) SHLWAPI_164
165 stdcall @(long long long long) SHLWAPI_165
166 stdcall @(ptr) SHLWAPI_166
167 stdcall @(long ptr) SHLWAPI_167
168 stdcall @(ptr ptr long ptr ptr ptr) SHLWAPI_168
169 stdcall @(long) SHLWAPI_169
170 stdcall @(str) SHLWAPI_170
171 stdcall @(ptr ptr) SHLWAPI_171
172 stdcall @(ptr ptr) SHLWAPI_172
173 stdcall -noname SHLWAPI_173(ptr ptr)
174 stdcall @(ptr ptr) SHLWAPI_174
175 stdcall @(ptr ptr) SHLWAPI_175
176 stdcall @(ptr ptr ptr ptr) SHLWAPI_176
177 stdcall -noname SHLWAPI_177(ptr wstr)
178 stdcall -noname SHLWAPI_178(ptr long long long long)
179 stdcall GetMenuPosFromID(ptr long)
180 stdcall @(long) SHLWAPI_180
181 stdcall @(long long long) SHLWAPI_181
182 stdcall @(long long long) SHLWAPI_182
183 stdcall @(ptr) SHLWAPI_183
184 stdcall @(ptr ptr long) SHLWAPI_184
185 stub @
186 stub @
187 stdcall @(ptr ptr) SHLWAPI_187
188 stub @
189 stdcall @(ptr ptr) SHLWAPI_189
190 stub @
191 stub @
192 stdcall -noname SHLWAPI_192(ptr long)
193 stdcall @() SHLWAPI_193
194 stub @
195 stub @
196 stub @
197 stdcall @(long ptr long) SHLWAPI_197
198 stub @
199 stdcall @(ptr ptr) SHLWAPI_199
200 stub @
201 stdcall @(ptr long ptr long long ptr ptr) SHLWAPI_201
202 stdcall @(ptr long ptr) SHLWAPI_202
203 stdcall @(str) SHLWAPI_203
204 stdcall @(long long) SHLWAPI_204
205 stdcall @(long str str ptr ptr ptr) SHLWAPI_205
206 stdcall @(long wstr wstr ptr ptr ptr) SHLWAPI_206
207 stub @
208 stdcall @(long long ptr ptr long) SHLWAPI_208
209 stdcall @(ptr) SHLWAPI_209
210 stdcall @(ptr long ptr) SHLWAPI_210
211 stdcall @(ptr long) SHLWAPI_211
160 stdcall -noname SHAboutInfoA(ptr long)
161 stdcall -noname SHAboutInfoW(ptr long)
162 stdcall @(str long) SHTruncateString
163 stdcall @(ptr ptr long ptr ptr) IUnknown_QueryStatus
164 stdcall @(ptr ptr long long ptr ptr) IUnknown_Exec
165 stdcall @(long long long long) SHSetWindowBits
166 stdcall @(ptr) SHIsEmptyStream
167 stdcall @(long ptr) SHSetParentHwnd
168 stdcall @(ptr ptr long ptr ptr ptr) ConnectToConnectionPoint
169 stdcall @(long) IUnknown_AtomicRelease
170 stdcall @(str) PathSkipLeadingSlashesA
171 stdcall @(ptr ptr) SHIsSameObject
172 stdcall @(ptr ptr) IUnknown_GetWindow
173 stdcall -noname IUnknown_SetOwner(ptr ptr)
174 stdcall @(ptr ptr) IUnknown_SetSite
175 stdcall @(ptr ptr) IUnknown_GetClassID
176 stdcall @(ptr ptr ptr ptr) IUnknown_QueryService
177 stdcall -noname SHLoadMenuPopup(ptr wstr)
178 stdcall -noname SHPropagateMessage(ptr long long long long)
179 stub -noname SHMenuIndexFromID
180 stdcall -noname SHRemoveAllSubMenus(long)
181 stdcall -noname SHEnableMenuItem(long long long)
182 stdcall -noname SHCheckMenuItem(long long long)
183 stdcall -noname SHRegisterClassA(ptr)
184 stdcall -noname SHLWAPI_184(ptr ptr long)
185 stub -noname SHMessageBoxCheckA
186 stub -noname SHSimulateDrop
187 stdcall -noname SHLoadFromPropertyBag(ptr ptr)
188 stub -noname IUnknown_TranslateAcceleratorOCS
189 stdcall -noname IUnknown_OnFocusOCS(ptr ptr)
190 stub -noname IUnknown_HandleIRestrict
191 stub -noname SHMessageBoxCheckW
192 stdcall -noname SHGetMenuFromID(ptr long)
193 stdcall -noname SHGetCurColorRes()
194 stub -noname SHWaitForSendMessageThread
195 stub -noname SHIsExpandableFolder
196 stub -noname DnsRecordSetCompare
197 stdcall @(long ptr long) SHFillRectClr
198 stub -noname SHSearchMapInt
199 stdcall @(ptr ptr) IUnknown_Set
200 stub -noname MayQSForward
201 stdcall @(ptr long ptr long long ptr ptr) MayExecForward
202 stdcall @(ptr long ptr) IsQSForward
203 stdcall @(str) SHStripMneumonicA
204 stdcall @(long long) SHIsChildOrSelf
205 stdcall @(long str str ptr ptr ptr) SHGetValueGoodBootA
206 stdcall @(long wstr wstr ptr ptr ptr) SHGetValueGoodBootW
207 stub -noname IContextMenu_Invoke
208 stdcall @(long long ptr ptr long) FDSA_Initialize
209 stdcall @(ptr) FDSA_Destroy
210 stdcall @(ptr long ptr) FDSA_InsertItem
211 stdcall @(ptr long) FDSA_DeleteItem
212 stdcall @(ptr ptr long) SHLWAPI_212
213 stdcall @(ptr) SHLWAPI_213
214 stdcall @(ptr ptr) SHLWAPI_214
215 stdcall @(str ptr long) SHLWAPI_215
216 stub @
217 stdcall @(wstr ptr ptr) SHLWAPI_217
218 stdcall @(long wstr ptr ptr) SHLWAPI_218
219 stdcall @(long long long long) SHLWAPI_219
220 stub @
221 stdcall -noname SHLWAPI_221(ptr)
213 stdcall @(ptr) IStream_Reset
214 stdcall @(ptr ptr) IStream_Size
215 stdcall @(str ptr long) SHAnsiToUnicode
216 stub -noname SHAnsiToUnicodeCP
217 stdcall @(wstr ptr ptr) SHUnicodeToAnsi
218 stdcall @(long wstr ptr ptr) SHUnicodeToAnsiCP
219 stdcall @(long long long long) QISearch
220 stub -noname SHSetDefaultDialogFont
221 stdcall -noname SHRemoveDefaultDialogFont(ptr)
222 stdcall -noname _SHGlobalCounterCreate(long)
223 stdcall -noname _SHGlobalCounterGetValue(long)
224 stdcall -noname _SHGlobalCounterIncrement(long)
225 stub @
226 stub @
227 stub @
228 stub @
229 stub @
230 stub @
231 stub @
232 stub @
233 stub @
234 stub @
235 stub @
236 stdcall @(ptr) SHLWAPI_236
237 stdcall @(ptr) SHLWAPI_237
238 stdcall -noname SHLWAPI_238(ptr ptr long)
239 stdcall -noname SHLWAPI_239(ptr ptr long)
240 stdcall @(long long long long) SHLWAPI_240
241 stdcall @() SHLWAPI_241
242 stub @
243 stub @
244 stub @
245 stub @
246 stub @
247 stub @
248 stub @
249 stub @
250 stub @
251 stub @
252 stub @
253 stdcall AssocCreate(long long long long ptr ptr)
254 stdcall AssocQueryKeyA(long long str ptr ptr)
255 stdcall AssocQueryKeyW(long long wstr ptr ptr)
256 stub @
257 stdcall -noname SHLWAPI_257(long ptr long long ptr long)
258 stub @
259 stub @
260 stub @
261 stub @
262 stub @
263 stub @
264 stub @
265 stub @
266 stdcall @(long wstr ptr ptr) SHLWAPI_266
267 stdcall @(long long long long) SHLWAPI_267
268 stdcall @(long long) SHLWAPI_268
269 stdcall @(str ptr) SHLWAPI_269
270 stdcall @(wstr ptr) SHLWAPI_270
271 stdcall @(wstr wstr wstr) SHLWAPI_271
272 stub @
273 stub @
274 stub @
275 stub @
276 stdcall @() SHLWAPI_276
277 stub @
278 stdcall @(long long long long long long) SHLWAPI_278
279 stdcall -noname SHLWAPI_279(ptr ptr ptr)
280 stdcall -noname SHLWAPI_280(ptr wstr long)
281 stdcall @(ptr ptr ptr ptr) SHLWAPI_281
282 stdcall @(ptr ptr ptr ptr) SHLWAPI_282
283 stub @
284 stdcall @(ptr ptr ptr) SHLWAPI_284
285 stdcall -noname SHLWAPI_285(ptr long)
286 stub @
287 stdcall -noname SHLWAPI_287(ptr long)
288 stub @
289 stdcall @(wstr long long) SHLWAPI_289
290 stub @
291 stub @
292 stub @
293 stub @
294 stdcall @(long long long long long) SHLWAPI_294
295 stdcall @(wstr ptr wstr wstr) SHLWAPI_295
296 stub @
297 stub @
225 stub -noname SHStripMneumonicW
226 stub -noname ZoneCheckPathA
227 stub -noname ZoneCheckPathW
228 stub -noname ZoneCheckUrlA
229 stub -noname ZoneCheckUrlW
230 stub -noname ZoneCheckUrlExA
231 stub -noname ZoneCheckUrlExW
232 stub -noname ZoneCheckUrlExCacheA
233 stub -noname ZoneCheckUrlExCacheW
234 stub -noname ZoneCheckHost
235 stub -noname ZoneCheckHostEx
236 stdcall -noname SHPinDllOfCLSID(ptr)
237 stdcall -noname SHRegisterClassW(ptr)
238 stdcall -noname SHUnregisterClassesA(ptr ptr long)
239 stdcall -noname SHUnregisterClassesW(ptr ptr long)
240 stdcall -noname SHDefWindowProc(long long long long)
241 stdcall -noname StopWatchMode()
242 stub -noname StopWatchFlush
243 stub -noname StopWatchA
244 stub -noname StopWatchW
245 stub -noname StopWatch_TimerHandler
246 stub -noname StopWatch_CheckMsg
247 stub -noname StopWatch_MarkFrameStart
248 stub -noname StopWatch_MarkSameFramStart
249 stub -noname StopWatch_MarkJavaStop
250 stub -noname GetPerfTime
251 stub -noname StopWatch_DispatchTime
252 stub -noname StopWatch_SetMsgLastLocation
253 stub -noname StopWatchExA
254 stub -noname StopWatchExW
255 stub -noname EventTraceHandler
256 stub -noname IUnknown_GetSite
257 stdcall -noname SHCreateWorkerWindowA(long ptr long long ptr long)
258 stub -noname SHRegisterWaitForSingleObject
259 stub -noname SHUnregisterWait
260 stdcall -noname SHQueueUserWorkItem(long long long long long long long)
261 stub -noname SHCreateTimerQueue
262 stub -noname SHDeleteTimerQueue
263 stub -noname SHSetTimerQueueTimer
264 stub -noname SHChangeTimerQueueTimer
265 stub -noname SHCancelTimerQueueTimer
266 stdcall -noname SHRestrictionLookup(long wstr ptr ptr)
267 stdcall -noname SHWeakQueryInterface(long long long long)
268 stdcall -noname SHWeakReleaseInterface(long long)
269 stdcall -noname GUIDFromStringA(str ptr)
270 stdcall -noname GUIDFromStringW(wstr ptr)
271 stdcall -noname SHGetRestriction(wstr wstr wstr)
272 stub -noname SHSetThreadPoolLimits
273 stub -noname SHTerminateThreadPool
274 stub -noname RegisterGlobalHotkeyW
275 stub -noname RegisterGlobalHotkeyA
276 stdcall -noname WhichPlatform()
277 stub -noname SHDialogBox
278 stdcall -noname SHCreateWorkerWindowW(long long long long long long)
279 stdcall -noname SHInvokeDefaultCommand(ptr ptr ptr)
280 stdcall -noname SHRegGetIntW(ptr wstr long)
281 stdcall -noname SHPackDispParamsV(ptr ptr ptr ptr)
282 stdcall -noname SHPackDispParams(ptr ptr ptr ptr)
283 stub -noname IConnectionPoint_InvokeWithCancel
284 stdcall -noname IConnectionPoint_SimpleInvoke(ptr ptr ptr)
285 stdcall -noname IConnectionPoint_OnChanged(ptr long)
286 stub -noname IUnknown_CPContainerInvokeParam
287 stdcall -noname IUnknown_CPContainerOnChanged(ptr long)
288 stub -noname IUnknown_CPContainerInvokeIndirect
289 stdcall -noname PlaySoundWrapW(wstr long long)
290 stub -noname SHMirrorIcon
291 stub -noname SHMessageBoxCheckExA
292 stub -noname SHMessageBoxCheckExW
293 stub -noname SHCancelUserWorkItems
294 stdcall -noname SHGetIniStringW(long long long long long)
295 stdcall -noname SHSetIniStringW(wstr ptr wstr wstr)
296 stub -noname CreateURLFileContentsW
297 stub -noname CreateURLFileContentsA
298 stdcall @(wstr wstr wstr wstr) kernel32.WritePrivateProfileStringW
299 stdcall @(long long long long ptr wstr long ptr) SHLWAPI_299
299 stdcall -noname ExtTextOutWrapW(long long long long ptr wstr long ptr)
300 stdcall @(long long long long long long long long long long long long long wstr) gdi32.CreateFontW
301 stdcall @(long wstr long ptr long ptr) user32.DrawTextExW
302 stdcall @(long long long ptr) user32.GetMenuItemInfoW
@ -310,142 +310,256 @@
310 stdcall @(long long ptr wstr ptr long) kernel32.GetTimeFormatW
311 stdcall @(long long ptr wstr ptr long) kernel32.GetDateFormatW
312 stdcall @(wstr wstr wstr ptr long wstr) kernel32.GetPrivateProfileStringW
313 stdcall @(ptr long ptr long long) SHLWAPI_313
313 stdcall -noname SHGetFileInfoWrapW(ptr long ptr long long)
314 stdcall @(ptr) user32.RegisterClassExW
315 stdcall @(long wstr ptr) user32.GetClassInfoExW
316 stub SHCreateStreamOnFileAOld
317 stub SHCreateStreamOnFileWOld
318 stdcall @(long long wstr long) SHLWAPI_318
316 stub @ # IShellFolder_GetDisplayNameOf
317 stub @ # IShellFolder_ParseDisplayName
318 stdcall @(long long wstr long) DragQueryFileWrapW
319 stdcall @(long long wstr wstr) user32.FindWindowExW
320 stdcall @(str str) SHLWAPI_320
321 stdcall @(wstr wstr) SHLWAPI_321
322 stdcall @(str) SHLWAPI_322
323 stdcall @(wstr) SHLWAPI_323
324 stdcall @(str str) SHLWAPI_324
325 stdcall @(wstr wstr) SHLWAPI_325
326 stdcall @(str) SHLWAPI_326
327 stdcall @(wstr) SHLWAPI_327
328 stdcall @(str ptr long) SHLWAPI_328
329 stdcall @(wstr ptr long) SHLWAPI_329
330 stub @
331 stub @
320 stdcall -noname RegisterMIMETypeForExtensionA(str str)
321 stdcall -noname RegisterMIMETypeForExtensionW(wstr wstr)
322 stdcall -noname UnregisterMIMETypeForExtensionA(str)
323 stdcall -noname UnregisterMIMETypeForExtensionW(wstr)
324 stdcall -noname RegisterExtensionForMIMETypeA(str str)
325 stdcall -noname RegisterExtensionForMIMETypeW(wstr wstr)
326 stdcall -noname UnregisterExtensionForMIMETypeA(str)
327 stdcall -noname UnregisterExtensionForMIMETypeW(wstr)
328 stdcall -noname GetMIMETypeSubKeyA(str ptr long)
329 stdcall -noname GetMIMETypeSubKeyW(wstr ptr long)
330 stub -noname MIME_GetExtensionA
331 stub -noname MIME_GetExtensionW
332 stdcall @(ptr long) user32.CallMsgFilterW
333 stdcall @(ptr) SHLWAPI_333
334 stdcall @(ptr ptr) SHLWAPI_334
335 stdcall @(ptr) SHLWAPI_335
336 stdcall @(ptr) SHLWAPI_336
337 stdcall @(wstr long ptr ptr long) SHLWAPI_337
333 stdcall -noname SHBrowseForFolderWrapW(ptr)
334 stdcall -noname SHGetPathFromIDListWrapW(ptr ptr)
335 stdcall -noname ShellExecuteExWrapW(ptr)
336 stdcall -noname SHFileOperationWrapW(ptr)
337 stdcall -noname ExtractIconExWrapW(wstr long ptr ptr long)
338 stdcall @(wstr long) kernel32.SetFileAttributesW
339 stdcall @(long long wstr ptr ptr long) kernel32.GetNumberFormatW
340 stdcall @(long wstr wstr long) user32.MessageBoxW
341 stdcall @(long ptr) kernel32.FindNextFileW
342 stdcall @(ptr long long) SHInterlockedCompareExchange
343 stdcall -noname SHLWAPI_343(ptr str long long ptr)
344 stdcall -noname SHLWAPI_344(ptr wstr long long ptr)
345 stub @
346 stdcall @(wstr ptr long) SHLWAPI_346
342 stdcall -noname SHInterlockedCompareExchange(ptr long long)
343 stdcall -noname SHRegGetCLSIDKeyA(ptr str long long ptr)
344 stdcall -noname SHRegGetCLSIDKeyW(ptr wstr long long ptr)
345 stub -noname SHAnsiToAnsi
346 stdcall -noname SHUnicodeToUnicode(wstr ptr long)
347 stdcall @(long wstr) advapi32.RegDeleteValueW
348 stub @
349 stub @
350 stdcall @(wstr ptr) SHLWAPI_350
351 stdcall @(wstr ptr long ptr) SHLWAPI_351
352 stdcall @(ptr wstr ptr ptr) SHLWAPI_352
353 stub @
354 stub @
355 stdcall -noname SHLWAPI_355(ptr long)
348 stub -noname SHGetFileDescriptionW
349 stub -noname SHGetFileDescriptionA
350 stdcall -noname GetFileVersionInfoSizeWrapW(wstr ptr)
351 stdcall -noname GetFileVersionInfoWrapW(wstr ptr long ptr)
352 stdcall -noname VerQueryValueWrapW(ptr wstr ptr ptr)
353 stub -noname SHFormatDateTimeA
354 stub -noname SHFormatDateTimeW
355 stdcall -noname IUnknown_EnableModeless(ptr long)
356 stdcall -noname _CreateAllAccessSecurityAttributes(ptr ptr)
357 stdcall @(wstr wstr wstr long long) SHLWAPI_357
358 stdcall @(wstr long long ptr ptr long) SHLWAPI_358
357 stdcall -noname SHGetNewLinkInfoWrapW(wstr wstr wstr long long)
358 stdcall -noname SHDefExtractIconWrapW(wstr long long ptr ptr long)
359 stdcall @(long long wstr) kernel32.OpenEventW
360 stdcall @(wstr) kernel32.RemoveDirectoryW
361 stdcall @(wstr ptr long) kernel32.GetShortPathNameW
362 stdcall @(ptr ptr) advapi32.GetUserNameW
363 stdcall -noname SHLWAPI_363(ptr ptr ptr long)
364 stdcall @(str str long) SHLWAPI_364
365 stub @
363 stdcall -noname SHInvokeCommand(ptr ptr ptr long)
364 stdcall -noname DoesStringRoundTripA(str str long)
365 stub -noname DoesStringRoundTripW
366 stdcall @(long long ptr ptr ptr ptr ptr ptr) advapi32.RegEnumValueW
367 stdcall @(wstr wstr ptr long wstr) kernel32.WritePrivateProfileStructW
368 stdcall @(wstr wstr ptr long wstr) kernel32.GetPrivateProfileStructW
369 stdcall @(wstr wstr ptr ptr long long ptr wstr ptr ptr) kernel32.CreateProcessW
370 stdcall @(long wstr long) SHLWAPI_370
371 stub @
372 stub @
373 stub @
374 stub @
375 stub @
376 stdcall @() SHLWAPI_376 # kernel32.GetUserDefaultUILanguage
377 stdcall @(str long long) SHLWAPI_377
378 stdcall @(wstr long long) SHLWAPI_378
379 stub @
380 stub @
381 stdcall AssocQueryStringA(long long ptr ptr str ptr)
382 stdcall AssocQueryStringByKeyA(long long ptr ptr str ptr)
383 stdcall AssocQueryStringByKeyW(long long ptr ptr wstr ptr)
384 stdcall AssocQueryStringW(long long ptr ptr wstr ptr)
385 stdcall ChrCmpIA(long long)
386 stdcall ChrCmpIW(long long)
387 stdcall ColorAdjustLuma(long long long)
388 stub @
389 stdcall @(ptr) SHLWAPI_389
390 stdcall @(long wstr) SHLWAPI_390
391 stdcall @(ptr ptr long ptr long) SHLWAPI_391
392 stub @
370 stdcall -noname ExtractIconWrapW(long wstr long)
371 stub -noname DdeInitializeWrapW
372 stub -noname DdeCreateStringHandleWrapW
373 stub -noname DdeQueryStringWrapW
374 stub -noname SHCheckDiskForMediaA
375 stub -noname SHCheckDiskForMediaW
376 stdcall @() MLGetUILanguage # kernel32.GetUserDefaultUILanguage
377 stdcall @(str long long) MLLoadLibraryA
378 stdcall @(wstr long long) MLLoadLibraryW
379 stub -noname Shell_GetCachedImageIndexWrapW
380 stub -noname Shell_GetCachedImageIndexWrapA
381 stub -noname AssocCopyVerbs
382 stub -noname ZoneComputePaneSize
383 stub -noname ZoneConfigureW
384 stub -noname SHRestrictedMessageBox
385 stub -noname SHLoadRawAccelerators
386 stub -noname SHQueryRawAccelerator
387 stub -noname SHQueryRawAcceleratorMsg
388 stub -noname ShellMessageBoxWrapW
389 stdcall -noname GetSaveFileNameWrapW(ptr)
390 stdcall -noname WNetRestoreConnectionWrapW(long wstr)
391 stdcall -noname WNetGetLastErrorWrapW(ptr ptr long ptr long)
392 stub -noname EndDialogWrap
393 stdcall @(long ptr long ptr long) user32.CreateDialogIndirectParamW
394 stdcall @(long ptr long ptr long) user32.CreateDialogIndirectParamA
395 stub @
396 stub @
397 stub @
398 stub @
399 stdcall @(str str long) SHLWAPI_399
400 stdcall @(wstr wstr long) SHLWAPI_400
401 stdcall @(ptr) SHLWAPI_401
402 stdcall @(ptr) SHLWAPI_402
403 stdcall @(ptr) SHLWAPI_403
404 stdcall ColorHLSToRGB(long long long)
405 stub @
406 stdcall @(ptr ptr ptr ptr ptr ptr) SHLWAPI_406
407 stub @
408 stub @
409 stub @
410 stub @
411 stub @
412 stub @
413 stdcall @(long) SHLWAPI_413
414 stub @
415 stub @
416 stub @
417 stub @
418 stdcall @(long) SHLWAPI_418
419 stub @
420 stub @
421 stub @
395 stub -noname MLWinHelpA
396 stub -noname MLHtmlHelpA
397 stub -noname MLWinHelpW
398 stub -noname MLHtmlHelpW
399 stdcall -noname StrCpyNXA(str str long)
400 stdcall -noname StrCpyNXW(wstr wstr long)
401 stdcall -noname PageSetupDlgWrapW(ptr)
402 stdcall -noname PrintDlgWrapW(ptr)
403 stdcall -noname GetOpenFileNameWrapW(ptr)
404 stub @ # IShellFolder_EnumObjects
405 stub -noname MLBuildResURLA
406 stdcall -noname MLBuildResURLW(ptr ptr ptr ptr ptr ptr)
407 stub -noname AssocMakeProgid
408 stub -noname AssocMakeShell
409 stub -noname AssocMakeApplicationByKeyW
410 stub -noname AssocMakeApplicationByKeyA
411 stub -noname AssocMakeFileExtsToApplicationW
412 stub -noname AssocMakeFileExtsToApplicationA
413 stdcall -noname SHGetMachineInfo(long)
414 stub -noname SHHtmlHelpOnDemandW
415 stub -noname SHHtmlHelpOnDemandA
416 stub -noname SHWinHelpOnDemandW
417 stub -noname SHWinHelpOnDemandA
418 stdcall -noname MLFreeLibrary(long)
419 stub -noname SHFlushSFCacheWrap
420 stub @ # CMemStream::Commit
421 stub -noname SHLoadPersistedDataObject
422 stdcall -noname _SHGlobalCounterCreateNamedA(str long)
423 stdcall -noname _SHGlobalCounterCreateNamedW(wstr long)
424 stdcall -noname _SHGlobalCounterDecrement(long)
425 stub @
426 stub @
427 stub @
425 stub -noname DeleteMenuWrap
426 stub -noname DestroyMenuWrap
427 stub -noname TrackPopupMenuWrap
428 stdcall @(long long long long long ptr) user32.TrackPopupMenuEx
429 stub @
430 stdcall @(long long) SHLWAPI_430
431 stdcall @(long) SHLWAPI_431
432 stub @
433 stub @
429 stub -noname MLIsMLHInstance
430 stdcall -noname MLSetMLHInstance(long long)
431 stdcall -noname MLClearMLHInstance(long)
432 stub -noname SHSendMessageBroadcastA
433 stub -noname SHSendMessageBroadcastW
434 stdcall @(long long long long long long ptr) user32.SendMessageTimeoutW
435 stub @
436 stdcall @(wstr ptr) SHLWAPI_436
437 stdcall @(long) SHLWAPI_437
438 stub @
439 stub @
440 stdcall -noname SHLWAPI_440(str ptr long)
441 stdcall -noname SHLWAPI_441(wstr ptr long)
435 stub -noname CLSIDFromProgIDWrap
436 stdcall -noname CLSIDFromStringWrap(wstr ptr)
437 stdcall -noname IsOS(long)
438 stub -noname SHLoadRegUIStringA
439 stub -noname SHLoadRegUIStringW
440 stdcall -noname SHGetWebFolderFilePathA(str ptr long)
441 stdcall -noname SHGetWebFolderFilePathW(wstr ptr long)
442 stdcall @(wstr ptr long) kernel32.GetEnvironmentVariableW
443 stdcall @(ptr long) kernel32.GetSystemWindowsDirectoryA
444 stdcall @(ptr long) kernel32.GetSystemWindowsDirectoryW
445 stdcall ColorRGBToHLS(long ptr ptr ptr)
446 stub @
445 stub -noname PathFileExistsAndAttributesA
446 stub -noname PathFileExistsAndAttributesW
447 stub -noname FixSlashesAndColonA
448 stub -noname FixSlashesAndColonW
449 stub -noname NextPathA
450 stub -noname NextPathW
451 stub -noname CharUpperNoDBCSA
452 stub -noname CharUpperNoDBCSW
453 stub -noname CharLowerNoDBCSA
454 stub -noname CharLowerNoDBCSW
455 stub -noname PathIsValidCharA
456 stub -noname PathIsValidCharW
457 stub -noname GetLongPathNameWrapW
458 stub -noname GetLongPathNameWrapA
459 stub -noname SHExpandEnvironmentStringsA
460 stub -noname SHExpandEnvironmentStringsW
461 stub -noname SHGetAppCompatFlags
462 stub -noname UrlFixupW
463 stub -noname SHExpandEnvironmentStringsForUserA
464 stub -noname SHExpandEnvironmentStringsForUserW
465 stub -noname PathUnExpandEnvStringsForUserA
466 stub -noname PathUnExpandEnvStringsForUserW
467 stub -noname SHRunIndirectRegClientCommand
468 stub -noname RunIndirectRegCommand
469 stub -noname RunRegCommand
470 stub -noname IUnknown_ProfferServiceOld
471 stub -noname SHCreatePropertyBagOnRegKey
472 stub -noname SHCreatePropertyBagOnProfileSelections
473 stub -noname SHGetIniStringUTF7W
474 stub -noname SHSetIniStringUTF7W
475 stub -noname GetShellSecurityDescriptor
476 stub -noname SHGetObjectCompatFlags
477 stub -noname SHCreatePropertyBagOnMemory
478 stub -noname IUnknown_TranslateAcceleratorIO
479 stub -noname IUnknown_UIActivateIO
480 stub -noname UrlCrackW
481 stub -noname IUnknown_HasFocusIO
482 stub -noname SHMessageBoxHelpA
483 stub -noname SHMessageBoxHelpW
484 stub -noname IUnknown_QueryServiceExec
485 stub -noname MapWin32ErrorToSTG
486 stub -noname ModeToCreateFileFlags
488 stub -noname SHConvertGraphicsFile
489 stub -noname GlobalAddAtomWrapW
490 stub -noname GlobalFindAtomWrapW
491 stdcall -noname SHGetShellKey(long long long)
492 stub -noname PrettifyFileDescriptionW
493 stub -noname SHPropertyBag_ReadType
494 stub -noname SHPropertyBag_ReadStr
495 stub -noname SHPropertyBag_WriteStr
496 stub -noname SHPropertyBag_ReadInt
497 stub -noname SHPropertyBag_WriteInt
498 stub -noname SHPropertyBag_ReadBOOLOld
499 stub -noname SHPropertyBag_WriteBOOL
505 stub -noname SHPropertyBag_ReadGUID
506 stub -noname SHPropertyBag_WriteGUID
507 stub -noname SHPropertyBag_ReadDWORD
508 stub -noname SHPropertyBag_WriteDWORD
509 stdcall -noname IUnknown_OnFocusChangeIS(ptr ptr long)
510 stub -noname SHLockSharedEx
511 stub -noname PathFileExistsDefExtAndAttributesW
512 stub -noname IStream_ReadPidl
513 stub -noname IStream_WritePidl
514 stub -noname IUnknown_ProfferService
516 stdcall -noname SKGetValueW(long wstr wstr long long long)
517 stub -noname SKSetValueW
518 stub -noname SKDeleteValueW
519 stub -noname SKAllocValueW
520 stub -noname SHPropertyBag_ReadBSTR
521 stub -noname SHPropertyBag_ReadPOINTL
522 stub -noname SHPropertyBag_WritePOINTL
523 stub -noname SHPropertyBag_ReadRECTL
524 stub -noname SHPropertyBag_WriteRECTL
525 stub -noname SHPropertyBag_ReadPOINTS
526 stub -noname SHPropertyBag_WritePOINTS
527 stub -noname SHPropertyBag_ReadSHORT
528 stub -noname SHPropertyBag_WriteSHORT
529 stub -noname SHPropertyBag_ReadInt
530 stub -noname SHPropertyBag_WriteInt
531 stub -noname SHPropertyBag_ReadStream
532 stub -noname SHPropertyBag_WriteStream
533 stub -noname SHGetPerScreenResName
534 stub -noname SHPropertyBag_ReadBOOL
535 stub -noname SHPropertyBag_Delete
536 stub -noname IUnknown_QueryServicePropertyBag
537 stub -noname SHBoolSystemParametersInfo
538 stub -noname IUnknown_QueryServicePropertyBag
539 stub -noname IUnknown_ShowBrowserBar
540 stub -noname SHInvokeCommandOnContextMenu
541 stub -noname SHInvokeCommandsOnContextMen
542 stub -noname GetUIVersion
543 stub -noname CreateColorSpaceWrapW
544 stub -noname QuerySourceCreateFromKey
545 stub -noname SHForwardContextMenuMsg
546 stub -noname IUnknown_DoContextMenuPopup
548 stub -noname SHAreIconsEqual
549 stub -noname SHCoCreateInstanceAC
550 stub -noname GetTemplateInfoFroHandle
551 stub @ # IShellFolder_CompareIDs
@ stdcall AssocCreate(long long long long ptr ptr)
@ stdcall AssocQueryKeyA(long long str ptr ptr)
@ stdcall AssocQueryKeyW(long long wstr ptr ptr)
@ stdcall AssocQueryStringA(long long ptr ptr str ptr)
@ stdcall AssocQueryStringByKeyA(long long ptr ptr str ptr)
@ stdcall AssocQueryStringByKeyW(long long ptr ptr wstr ptr)
@ stdcall AssocQueryStringW(long long ptr ptr wstr ptr)
@ stdcall ChrCmpIA(long long)
@ stdcall ChrCmpIW(long long)
@ stdcall ColorAdjustLuma(long long long)
@ stdcall ColorHLSToRGB(long long long)
@ stdcall ColorRGBToHLS(long ptr ptr ptr)
@ stdcall DllGetVersion (ptr) SHLWAPI_DllGetVersion
@ stdcall GetMenuPosFromID(ptr long)
@ stdcall HashData (ptr long ptr long)
@ stub IntlStrEqWorkerA
@ stub IntlStrEqWorkerW

View File

@ -2076,7 +2076,7 @@ BOOL WINAPI StrIsIntlEqualW(BOOL bCase, LPCWSTR lpszStr, LPCWSTR lpszComp,
* Success: A pointer to the last character written.
* Failure: lpszDest, if any arguments are invalid.
*/
LPSTR WINAPI SHLWAPI_399(LPSTR lpszDest, LPCSTR lpszSrc, int iLen)
LPSTR WINAPI StrCpyNXA(LPSTR lpszDest, LPCSTR lpszSrc, int iLen)
{
TRACE("(%p,%s,%i)\n", lpszDest, debugstr_a(lpszSrc), iLen);
@ -2093,9 +2093,9 @@ LPSTR WINAPI SHLWAPI_399(LPSTR lpszDest, LPCSTR lpszSrc, int iLen)
/*************************************************************************
* @ [SHLWAPI.400]
*
* Unicode version of SHLWAPI_399.
* Unicode version of StrCpyNXA.
*/
LPWSTR WINAPI SHLWAPI_400(LPWSTR lpszDest, LPCWSTR lpszSrc, int iLen)
LPWSTR WINAPI StrCpyNXW(LPWSTR lpszDest, LPCWSTR lpszSrc, int iLen)
{
TRACE("(%p,%s,%i)\n", lpszDest, debugstr_w(lpszSrc), iLen);
@ -2325,7 +2325,7 @@ LPSTR WINAPI StrFormatByteSizeA(DWORD dwBytes, LPSTR lpszDest, UINT cchMax)
}
/*************************************************************************
* SHLWAPI_203 [SHLWAPI.203]
* @ [SHLWAPI.203]
*
* Remove a single non-trailing ampersand ('&') from a string.
*
@ -2336,7 +2336,7 @@ LPSTR WINAPI StrFormatByteSizeA(DWORD dwBytes, LPSTR lpszDest, UINT cchMax)
* The character after the first ampersand in lpszStr, or the first character
* in lpszStr if there is no ampersand in the string.
*/
char WINAPI SHLWAPI_203(LPCSTR lpszStr)
char WINAPI SHStripMneumonicA(LPCSTR lpszStr)
{
LPSTR lpszIter, lpszTmp;
char ch;

View File

@ -51,7 +51,7 @@ static HRESULT (WINAPI *pSHGetInstanceExplorer)(IUnknown**);
extern DWORD SHLWAPI_ThreadRef_index; /* Initialised in shlwapi_main.c */
DWORD WINAPI SHLWAPI_23(REFGUID,LPSTR,INT);
DWORD WINAPI SHStringFromGUIDA(REFGUID,LPSTR,INT);
/**************************************************************************
* _CreateAllAccessSecurityAttributes [SHLWAPI.356]
@ -475,6 +475,6 @@ HANDLE WINAPI _SHGlobalCounterCreate (REFGUID guid)
TRACE("(%s)\n", debugstr_guid(guid));
/* Create a named semaphore using the GUID string */
SHLWAPI_23(guid, szName, sizeof(szName) - 1);
SHStringFromGUIDA(guid, szName, sizeof(szName) - 1);
return _SHGlobalCounterCreateNamedA(szName, 0);
}

View File

@ -270,7 +270,7 @@ static BOOL URL_JustLocation(LPCWSTR str)
* Success: S_OK. y contains the parsed Url details.
* Failure: An HRESULT error code.
*/
DWORD WINAPI SHLWAPI_1 (LPCSTR x, UNKNOWN_SHLWAPI_1 *y)
DWORD WINAPI ParseURLA(LPCSTR x, UNKNOWN_SHLWAPI_1 *y)
{
DWORD cnt;
const SHL_2_inet_scheme *inet_pro;
@ -322,9 +322,9 @@ DWORD WINAPI SHLWAPI_1 (LPCSTR x, UNKNOWN_SHLWAPI_1 *y)
/*************************************************************************
* @ [SHLWAPI.2]
*
* Unicode version of SHLWAPI_1.
* Unicode version of ParseURLA.
*/
DWORD WINAPI SHLWAPI_2 (LPCWSTR x, UNKNOWN_SHLWAPI_2 *y)
DWORD WINAPI ParseURLW(LPCWSTR x, UNKNOWN_SHLWAPI_2 *y)
{
DWORD cnt;
const SHL_2_inet_scheme *inet_pro;
@ -681,7 +681,7 @@ HRESULT WINAPI UrlCombineW(LPCWSTR pszBase, LPCWSTR pszRelative,
ret = UrlCanonicalizeW(pszRelative, mrelative, &len, myflags);
/* See if the base has a scheme */
res1 = SHLWAPI_2(mbase, &base);
res1 = ParseURLW(mbase, &base);
if (res1) {
/* if pszBase has no scheme, then return pszRelative */
TRACE("no scheme detected in Base\n");
@ -719,7 +719,7 @@ HRESULT WINAPI UrlCombineW(LPCWSTR pszBase, LPCWSTR pszRelative,
* the last '/'
*/
res2 = SHLWAPI_2(mrelative, &relative);
res2 = ParseURLW(mrelative, &relative);
if (res2) {
/* no scheme in pszRelative */
TRACE("no scheme detected in Relative\n");
@ -1265,7 +1265,7 @@ LPCSTR WINAPI UrlGetLocationA(
DWORD res1;
base.size = 24;
res1 = SHLWAPI_1(pszUrl, &base);
res1 = ParseURLA(pszUrl, &base);
if (res1) return NULL; /* invalid scheme */
/* if scheme is file: then never return pointer */
@ -1287,7 +1287,7 @@ LPCWSTR WINAPI UrlGetLocationW(
DWORD res1;
base.size = 24;
res1 = SHLWAPI_2(pszUrl, &base);
res1 = ParseURLW(pszUrl, &base);
if (res1) return NULL; /* invalid scheme */
/* if scheme is file: then never return pointer */
@ -1569,7 +1569,7 @@ HRESULT WINAPI UrlApplySchemeW(LPCWSTR pszIn, LPWSTR pszOut, LPDWORD pcchOut, DW
in_scheme.size = 24;
/* See if the base has a scheme */
res1 = SHLWAPI_2(pszIn, &in_scheme);
res1 = ParseURLW(pszIn, &in_scheme);
if (res1) {
/* no scheme in input, need to see if we need to guess */
if (dwFlags & URL_APPLY_GUESSSCHEME) {
@ -1635,7 +1635,7 @@ BOOL WINAPI UrlIsA(LPCSTR pszUrl, URLIS Urlis)
case URLIS_OPAQUE:
base.size = 24;
res1 = SHLWAPI_1(pszUrl, &base);
res1 = ParseURLA(pszUrl, &base);
if (res1) return FALSE; /* invalid scheme */
if ((*base.ap2 == '/') && (*(base.ap2+1) == '/'))
/* has scheme followed by 2 '/' */
@ -1668,7 +1668,7 @@ BOOL WINAPI UrlIsW(LPCWSTR pszUrl, URLIS Urlis)
case URLIS_OPAQUE:
base.size = 24;
res1 = SHLWAPI_2(pszUrl, &base);
res1 = ParseURLW(pszUrl, &base);
if (res1) return FALSE; /* invalid scheme */
if ((*base.ap2 == L'/') && (*(base.ap2+1) == L'/'))
/* has scheme followed by 2 '/' */
@ -2039,7 +2039,7 @@ BOOL WINAPI PathIsURLA(LPCSTR lpstrPath)
/* get protocol */
base.size = sizeof(base);
res1 = SHLWAPI_1(lpstrPath, &base);
res1 = ParseURLA(lpstrPath, &base);
return (base.fcncde > 0);
}
@ -2057,7 +2057,7 @@ BOOL WINAPI PathIsURLW(LPCWSTR lpstrPath)
/* get protocol */
base.size = sizeof(base);
res1 = SHLWAPI_2(lpstrPath, &base);
res1 = ParseURLW(lpstrPath, &base);
return (base.fcncde > 0);
}