windows-nt/Source/XPSP1/NT/shell/published/dload/shell32.c
2020-09-26 16:20:57 +08:00

1425 lines
19 KiB
C

#include "shellpch.h"
#pragma hdrstop
#define _SHELL32_
#include <shellapi.h>
#include <shlobj.h>
#include <shlobjp.h>
#undef SHSTDAPI
#define SHSTDAPI HRESULT STDAPICALLTYPE
#undef SHSTDAPI_
#define SHSTDAPI_(type) type STDAPICALLTYPE
static
WINSHELLAPI
UINT
WINAPI
ExtractIconExW (
LPCWSTR lpszFile,
int nIconIndex,
HICON FAR *phiconLarge,
HICON FAR *phiconSmall,
UINT nIcons)
{
return 0;
}
static
WINSHELLAPI
UINT
WINAPI
ExtractIconExA (
LPCSTR lpszFile,
int nIconIndex,
HICON FAR *phiconLarge,
HICON FAR *phiconSmall,
UINT nIcons)
{
return 0;
}
static
HINSTANCE
WINAPI
FindExecutableA (
LPCSTR lpFile,
LPCSTR lpDirectory,
LPSTR lpResult
)
{
return 0;
}
static
HINSTANCE
WINAPI
FindExecutableW (
LPCWSTR lpFile,
LPCWSTR lpDirectory,
LPWSTR lpResult
)
{
return 0;
}
static
int
WINAPI
RestartDialog (
HWND hParent,
LPCTSTR lpPrompt,
DWORD dwReturn
)
{
return IDNO;
}
static
int
WINAPI
RestartDialogEx (
HWND hParent,
LPCTSTR lpPrompt,
DWORD dwReturn,
DWORD ReasonCode
)
{
return IDNO;
}
static
LPITEMIDLIST
WINAPI
SHBrowseForFolderW (
LPBROWSEINFOW lpbi
)
{
return NULL;
}
static
LPITEMIDLIST
WINAPI
SHBrowseForFolderA (
LPBROWSEINFOA lpbi
)
{
return NULL;
}
static
void
STDAPICALLTYPE
SHChangeNotify(
LONG wEventId,
UINT uFlags,
LPCVOID dwItem1,
LPCVOID dwItem2)
{
}
static
HRESULT
STDAPICALLTYPE
SHGetFolderPathA (
HWND hwnd, int csidl, HANDLE hToken, DWORD dwFlags, LPSTR pszPath
)
{
*pszPath = 0;
return E_FAIL;
}
static
HRESULT
STDAPICALLTYPE
SHGetFolderPathW (
HWND hwnd, int csidl, HANDLE hToken, DWORD dwFlags, LPWSTR pszPath
)
{
*pszPath = 0;
return E_FAIL;
}
static
HRESULT
STDAPICALLTYPE
SHGetMalloc (
LPMALLOC * ppMalloc
)
{
return E_FAIL;
}
static
BOOL
STDAPICALLTYPE
SHGetPathFromIDListW (
LPCITEMIDLIST pidl,
LPWSTR pszPath
)
{
return FALSE;
}
static
BOOL
STDAPICALLTYPE
SHGetPathFromIDListA (
LPCITEMIDLIST pidl,
LPSTR pszPath
)
{
return FALSE;
}
static
HRESULT
STDAPICALLTYPE
SHGetSpecialFolderLocation (
HWND hwnd,
int csidl,
LPITEMIDLIST *ppidl
)
{
return E_FAIL;
}
static
BOOL
STDAPICALLTYPE
SHGetSpecialFolderPathW(
HWND hwnd,
LPWSTR pszPath,
int csidl,
BOOL fCreate)
{
return FALSE;
}
static
WINSHELLAPI
INT
WINAPI
ShellAboutW(
HWND hwnd,
LPCWSTR szApp,
LPCWSTR szOtherStuff,
HICON hIcon
)
{
return FALSE;
}
static
WINSHELLAPI
HINSTANCE
APIENTRY
ShellExecuteA (
HWND hwnd,
LPCSTR lpOperation,
LPCSTR lpFile,
LPCSTR lpParameters,
LPCSTR lpDirectory,
INT nShowCmd
)
{
return NULL;
}
static
WINSHELLAPI
BOOL
WINAPI
ShellExecuteExW(LPSHELLEXECUTEINFOW lpExecInfo)
{
return FALSE;
}
static
WINSHELLAPI
BOOL
WINAPI
ShellExecuteExA(LPSHELLEXECUTEINFOA lpExecInfo)
{
return FALSE;
}
static
WINSHELLAPI
HINSTANCE
APIENTRY
ShellExecuteW (
HWND hwnd,
LPCWSTR lpOperation,
LPCWSTR lpFile,
LPCWSTR lpParameters,
LPCWSTR lpDirectory,
INT nShowCmd
)
{
return NULL;
}
static
BOOL
WINAPI
LinkWindow_RegisterClass()
{
return FALSE;
}
static
BOOL
WINAPI
LinkWindow_UnregisterClass(
HINSTANCE hInst
)
{
return FALSE;
}
static
UINT
WINAPI
DragQueryFileA(
HDROP hDrop,
UINT wFile,
LPSTR lpFile,
UINT cb
)
{
return wFile;
}
static
UINT
WINAPI
DragQueryFileW(
HDROP hDrop,
UINT wFile,
LPWSTR lpFile,
UINT cb
)
{
return wFile;
}
static
HRESULT
WINAPI
SHDefExtractIconA(
LPCSTR pszIconFile,
int iIndex,
UINT uFlags,
HICON *phiconLarge,
HICON *phiconSmall,
UINT nIconSize
)
{
return HRESULT_FROM_WIN32(ERROR_PROC_NOT_FOUND);
}
static
HRESULT
WINAPI
SHDefExtractIconW(
LPCWSTR pszIconFile,
int iIndex,
UINT uFlags,
HICON *phiconLarge,
HICON *phiconSmall,
UINT nIconSize
)
{
return HRESULT_FROM_WIN32(ERROR_PROC_NOT_FOUND);
}
static
BOOL
WINAPI
SHGetNewLinkInfoA(
LPCSTR pszLinkTo,
LPCSTR pszDir,
LPSTR pszName,
BOOL* pfMustCopy,
UINT uFlags
)
{
return FALSE;
}
static
BOOL
WINAPI
SHGetNewLinkInfoW(
LPCWSTR pszLinkTo,
LPCWSTR pszDir,
LPWSTR pszName,
BOOL* pfMustCopy,
UINT uFlags
)
{
return FALSE;
}
static
HICON
WINAPI
ExtractIconA(
HINSTANCE hInst,
LPCSTR lpszExeFileName,
UINT nIconIndex
)
{
return NULL;
}
static
HICON
WINAPI
ExtractIconW(
HINSTANCE hInst,
LPCWSTR lpszExeFileName,
UINT nIconIndex
)
{
return NULL;
}
static
DWORD_PTR
WINAPI
SHGetFileInfoA(
LPCSTR pszPath,
DWORD dwFileAttributes,
SHFILEINFOA *psfi,
UINT cbFileInfo,
UINT uFlags
)
{
return 0;
}
static
DWORD_PTR
WINAPI
SHGetFileInfoW(
LPCWSTR pszPath,
DWORD dwFileAttributes,
SHFILEINFOW *psfi,
UINT cbFileInfo,
UINT uFlags
)
{
return 0;
}
static
DWORD
WINAPI
SHFormatDrive(
HWND hwnd,
UINT drive,
UINT fmtID,
UINT options
)
{
return SHFMT_ERROR;
}
static
int
WINAPI
DriveType(
int iDrive
)
{
return DRIVE_UNKNOWN;
}
static
int
WINAPI
RealDriveType(
int iDrive,
BOOL fOKToHitNet
)
{
return DRIVE_UNKNOWN;
}
static
void
WINAPI
ILFree(
LPITEMIDLIST pidl
)
{
}
static
LPITEMIDLIST
WINAPI
ILClone(
LPCITEMIDLIST pidl
)
{
return NULL;
}
static
BOOL
WINAPI
ILIsEqual(
LPCITEMIDLIST pidl1,
LPCITEMIDLIST pidl2
)
{
return (pidl1 == pidl2);
}
static
HRESULT
WINAPI
SHGetDesktopFolder(
IShellFolder** ppshf
)
{
*ppshf = NULL;
return HRESULT_FROM_WIN32(ERROR_PROC_NOT_FOUND);
}
static
int
WINAPI
Shell_GetCachedImageIndex(
LPCTSTR pszIconPath,
int iIconIndex,
UINT uIconFlags
)
{
return -1;
}
static
int
WINAPI
SHFileOperationA(
LPSHFILEOPSTRUCTA lpFileOp
)
{
return ERROR_PROC_NOT_FOUND;
}
static
int
WINAPI
SHFileOperationW(
LPSHFILEOPSTRUCTW lpFileOp
)
{
return ERROR_PROC_NOT_FOUND;
}
static
int
WINAPI
IsNetDrive(
int iDrive
)
{
return 0;
}
static
UINT
WINAPI
ILGetSize(
LPCITEMIDLIST pidl
)
{
return 0;
}
static
void
WINAPI
SHFlushSFCache()
{
}
static
HRESULT
WINAPI
SHCoCreateInstance(
LPCTSTR pszCLSID,
const CLSID *pclsid,
IUnknown *pUnkOuter,
REFIID riid,
void** ppv
)
{
*ppv = NULL;
return E_FAIL;
}
static
HRESULT
WINAPI
SHGetInstanceExplorer(
IUnknown** ppunk
)
{
*ppunk = NULL;
return E_FAIL;
}
static
HRESULT
WINAPI
SHGetDataFromIDListW(
IShellFolder *psf,
LPCITEMIDLIST pidl,
int nFormat,
void* pv,
int cb
)
{
return HRESULT_FROM_WIN32(ERROR_PROC_NOT_FOUND);
}
static
HRESULT
WINAPI
SHBindToParent(
LPCITEMIDLIST pidl,
REFIID riid,
void** ppv,
LPCITEMIDLIST* ppidlLast
)
{
*ppv = NULL;
return HRESULT_FROM_WIN32(ERROR_PROC_NOT_FOUND);
}
static
SHSTDAPI_(void)
SHFree(
void* pv
)
{
}
static
SHSTDAPI_(void)
SHGetSetSettings(
LPSHELLSTATE lpss,
DWORD dwMask,
BOOL bSet
)
{
ZeroMemory(lpss, sizeof(SHELLSTATE));
}
static
SHSTDAPI_(BOOL)
Shell_GetImageLists(
HIMAGELIST *phiml,
HIMAGELIST *phimlSmall
)
{
if (phiml)
{
*phiml = NULL;
}
if (phimlSmall)
{
*phimlSmall = NULL;
}
return FALSE;
}
static
SHSTDAPI_(BOOL)
Shell_NotifyIconW(
DWORD dwMessage,
NOTIFYICONDATAW *pnid
)
{
return FALSE;
}
static
SHSTDAPI_(BOOL)
DAD_DragEnterEx2(
HWND hwndTarget,
const POINT ptStart,
IDataObject *pdtObject
)
{
return FALSE;
}
static
SHSTDAPI_(BOOL)
DAD_DragMove(
POINT pt
)
{
return FALSE;
}
static
SHSTDAPI
SHGetDataFromIDListA(
IShellFolder *psf,
LPCITEMIDLIST pidl,
int nFormat,
void* pv,
int cb
)
{
return HRESULT_FROM_WIN32(ERROR_PROC_NOT_FOUND);
}
static
SHSTDAPI_(LPITEMIDLIST)
ILCombine(
LPCITEMIDLIST pidl1,
LPCITEMIDLIST pidl2
)
{
return NULL;
}
static
SHSTDAPI
SHDoDragDrop(
HWND hwnd,
IDataObject *pdata,
IDropSource *pdsrc,
DWORD dwEffect,
DWORD *pdwEffect
)
{
return HRESULT_FROM_WIN32(ERROR_PROC_NOT_FOUND);
}
static
SHSTDAPI
SHLoadOLE(
LPARAM lParam
)
{
return S_OK;
}
static
SHSTDAPI_(void)
SHSetInstanceExplorer(
IUnknown *punk
)
{
}
static
SHSTDAPI
SHCreateStdEnumFmtEtc(
UINT cfmt,
const FORMATETC afmt[],
IEnumFORMATETC **ppenumFormatEtc
)
{
return HRESULT_FROM_WIN32(ERROR_PROC_NOT_FOUND);
}
static
SHSTDAPI
ILLoadFromStream(
IStream *pstm,
LPITEMIDLIST *pidl
)
{
return HRESULT_FROM_WIN32(ERROR_PROC_NOT_FOUND);
}
static
SHSTDAPI_(UINT)
Shell_MergeMenus(
HMENU hmDst,
HMENU hmSrc,
UINT uInsert,
UINT uIDAdjust,
UINT uIDAdjustMax,
ULONG uFlags
)
{
return uIDAdjust;
}
static
SHSTDAPI_(LPITEMIDLIST)
ILCloneFirst(
LPCITEMIDLIST pidl
)
{
return NULL;
}
static
SHSTDAPI_(DWORD)
SHRestricted(
RESTRICTIONS rest
)
{
return 0;
}
static
SHSTDAPI
SHStartNetConnectionDialogW(
HWND hwnd,
LPCWSTR pszRemoteName,
DWORD dwType
)
{
return S_OK;
}
static
SHSTDAPI_(BOOL)
SHChangeNotifyDeregister(
unsigned long ulID
)
{
return FALSE;
}
static
SHSTDAPI
SHFlushClipboard()
{
return HRESULT_FROM_WIN32(ERROR_PROC_NOT_FOUND);
}
static
SHSTDAPI_(LPITEMIDLIST)
ILFindChild(
LPCITEMIDLIST pidlParent,
LPCITEMIDLIST pidlChild
)
{
return NULL;
}
static
SHSTDAPI_(BOOL)
ILIsParent(
LPCITEMIDLIST pidl1,
LPCITEMIDLIST pidl2,
BOOL fImmediate
)
{
return FALSE;
}
static
SHSTDAPI_(BOOL)
ILRemoveLastID(
LPITEMIDLIST pidl
)
{
return FALSE;
}
static
SHSTDAPI_(IContextMenu*)
SHFind_InitMenuPopup(
HMENU hmenu,
HWND hwndOwner,
UINT idCmdFirst,
UINT idCmdLast
)
{
return NULL;
}
static
SHSTDAPI_(BOOL)
SHChangeNotification_Unlock(
HANDLE hLock
)
{
return FALSE;
}
static
SHSTDAPI_(HANDLE)
SHChangeNotification_Lock(
HANDLE hChangeNotification,
DWORD dwProcessId,
LPITEMIDLIST **pppidl,
LONG *plEvent
)
{
return NULL;
}
static
SHSTDAPI
SHGetRealIDL(
IShellFolder *psf,
LPCITEMIDLIST pidlSimple,
LPITEMIDLIST * ppidlReal
)
{
*ppidlReal = NULL;
return HRESULT_FROM_WIN32(ERROR_PROC_NOT_FOUND);
}
static
SHSTDAPI
ILSaveToStream(
IStream *pstm,
LPCITEMIDLIST pidl
)
{
return HRESULT_FROM_WIN32(ERROR_PROC_NOT_FOUND);
}
static
SHSTDAPI_(BOOL)
DAD_ShowDragImage(
BOOL fShow
)
{
return FALSE;
}
static
SHSTDAPI_(BOOL)
SignalFileOpen(
LPCITEMIDLIST pidl
)
{
return FALSE;
}
static
SHSTDAPI_(int)
SHMapPIDLToSystemImageListIndex(
IShellFolder *pshf,
LPCITEMIDLIST pidl,
int *piIndexSel
)
{
return -1;
}
static
SHSTDAPI_(LPITEMIDLIST)
ILGetNext(
LPCITEMIDLIST pidl
)
{
return NULL;
}
static
SHSTDAPI_(BOOL)
PathIsExe(
LPCTSTR pszPath
)
{
return FALSE;
}
static
SHSTDAPI_(BOOL)
DAD_DragLeave()
{
return FALSE;
}
static
SHSTDAPI_(UINT_PTR)
SHAppBarMessage(
DWORD dwMessage,
PAPPBARDATA pData
)
{
return FALSE;
}
static
SHSTDAPI_(HICON)
ExtractAssociatedIconExW(
HINSTANCE hInst,
LPWSTR lpIconPath,
LPWORD lpiIconIndex,
LPWORD lpiIconId
)
{
return NULL;
}
static
SHSTDAPI_(BOOL)
DAD_AutoScroll(
HWND hwnd,
AUTO_SCROLL_DATA *pad,
const POINT *pptNow
)
{
return FALSE;
}
static
SHSTDAPI_(BOOL)
DAD_SetDragImage(
HIMAGELIST him,
POINT * pptOffset
)
{
return TRUE;
}
static
SHSTDAPI_(LPITEMIDLIST)
ILAppendID(
LPITEMIDLIST pidl,
LPCSHITEMID pmkid,
BOOL fAppend
)
{
return NULL;
}
static
SHSTDAPI_(int)
SHHandleUpdateImage(
LPCITEMIDLIST pidlExtra
)
{
return -1;
}
static
SHSTDAPI_(LPITEMIDLIST)
SHCloneSpecialIDList(
HWND hwnd,
int csidl,
BOOL fCreate
)
{
return NULL;
}
static
SHSTDAPI_(INT)
ShellAboutA(
HWND hWnd,
LPCSTR szApp,
LPCSTR szOtherStuff,
HICON hIcon
)
{
return 0;
}
static
SHSTDAPI_(int)
SHCreateDirectory(
HWND hwnd,
LPCTSTR pszPath
)
{
return ERROR_PROC_NOT_FOUND;
}
static
SHSTDAPI_(int)
PathCleanupSpec(
LPCTSTR pszDir,
LPTSTR pszSpec
)
{
return 0;
}
static
SHSTDAPI_(void *)
SHAlloc(
SIZE_T cb
)
{
return NULL;
}
static
SHSTDAPI_(BOOL)
ReadCabinetState(
LPCABINETSTATE lpState,
int iSize
)
{
return FALSE;
}
static
SHSTDAPI_(LPITEMIDLIST)
ILCreateFromPathA(
LPCSTR pszPath
)
{
return NULL;
}
static
SHSTDAPI_(LPITEMIDLIST)
ILCreateFromPathW(
LPCWSTR pszPath
)
{
return NULL;
}
static
SHSTDAPI_(LPITEMIDLIST)
ILFindLastID(
LPCITEMIDLIST pidl
)
{
return NULL;
}
static
SHSTDAPI_(BOOL)
WriteCabinetState(
LPCABINETSTATE lpState
)
{
return FALSE;
}
static
SHSTDAPI_(void)
SHUpdateImageW(
LPCWSTR pszHashItem,
int iIndex,
UINT uFlags,
int iImageIndex
)
{
}
static
SHSTDAPI
SHLimitInputEdit(
HWND hwndEdit,
IShellFolder *psf
)
{
return HRESULT_FROM_WIN32(ERROR_PROC_NOT_FOUND);
}
static
SHSTDAPI
SHPathPrepareForWriteW(
HWND hwnd,
IUnknown *punkEnableModless,
LPCWSTR pszPath,
DWORD dwFlags
)
{
return HRESULT_FROM_WIN32(ERROR_PROC_NOT_FOUND);
}
static
SHSTDAPI
SHLoadInProc(
REFCLSID rclsid
)
{
return HRESULT_FROM_WIN32(ERROR_PROC_NOT_FOUND);
}
static
SHSTDAPI_(LONG)
PathProcessCommand(
LPCTSTR lpSrc,
LPTSTR lpDest,
int iMax,
DWORD dwFlags
)
{
return -1;
}
static
WINSHELLAPI
HRESULT
STDAPICALLTYPE
SHCLSIDFromString(
LPCTSTR lpsz,
LPCLSID lpclsid
)
{
ZeroMemory(lpclsid, sizeof(CLSID));
return HRESULT_FROM_WIN32(ERROR_PROC_NOT_FOUND);
}
static
SHSTDAPI
SHILCreateFromPath(
LPCTSTR szPath,
LPITEMIDLIST *ppidl,
DWORD *rgfInOut
)
{
return HRESULT_FROM_WIN32(ERROR_PROC_NOT_FOUND);
}
static
SHSTDAPI_(LPITEMIDLIST)
SHSimpleIDListFromPath(
LPCTSTR pszPath
)
{
return NULL;
}
static
SHSTDAPI_(BOOL)
GetFileNameFromBrowse(
HWND hwnd,
LPTSTR pszFilePath,
UINT cbFilePath,
LPCTSTR pszWorkingDir,
LPCTSTR pszDefExt,
LPCTSTR pszFilters,
LPCTSTR pszTitle
)
{
return FALSE;
}
static
SHSTDAPI_(IStream*)
OpenRegStream(
HKEY hkey,
LPCTSTR pszSubkey,
LPCTSTR pszValue,
DWORD grfMode
)
{
return NULL;
}
static
SHSTDAPI_(BOOL)
PathYetAnotherMakeUniqueName(
LPTSTR pszUniqueName,
LPCTSTR pszPath,
LPCTSTR pszShort,
LPCTSTR pszFileSpec
)
{
return FALSE;
}
static
WINSHELLAPI
int
WINAPI
PickIconDlg(
HWND hwnd,
LPTSTR pszIconPath,
UINT cbIconPath,
int *piIconIndex
)
{
return 0;
}
static
SHSTDAPI_(LRESULT)
SHShellFolderView_Message(
HWND hwndMain,
UINT uMsg,
LPARAM lParam
)
{
return 0;
}
static
SHSTDAPI
SHCreateShellFolderViewEx(
LPCSFV pcsfv,
IShellView** ppsv
)
{
*ppsv = NULL;
return HRESULT_FROM_WIN32(ERROR_PROC_NOT_FOUND);
}
static
SHSTDAPI_(BOOL)
SHFindFiles(
LPCITEMIDLIST pidlFolder,
LPCITEMIDLIST pidlSaveFile
)
{
return FALSE;
}
static
SHSTDAPI_(BOOL)
DAD_DragEnterEx(
HWND hwndTarget,
const POINT ptStart
)
{
return FALSE;
}
//
// !! WARNING !! The entries below must be in order by ORDINAL
//
DEFINE_ORDINAL_ENTRIES(shell32)
{
DLOENTRY(3, SHDefExtractIconA)
DLOENTRY(4, SHChangeNotifyDeregister)
DLOENTRY(6, SHDefExtractIconW)
DLOENTRY(14, SHStartNetConnectionDialogW)
DLOENTRY(16, ILFindLastID)
DLOENTRY(17, ILRemoveLastID)
DLOENTRY(18, ILClone)
DLOENTRY(19, ILCloneFirst)
DLOENTRY(21, ILIsEqual)
DLOENTRY(22, DAD_DragEnterEx2)
DLOENTRY(23, ILIsParent)
DLOENTRY(24, ILFindChild)
DLOENTRY(25, ILCombine)
DLOENTRY(26, ILLoadFromStream)
DLOENTRY(27, ILSaveToStream)
DLOENTRY(28, SHILCreateFromPath)
DLOENTRY(43, PathIsExe)
DLOENTRY(59, RestartDialog)
DLOENTRY(62, PickIconDlg)
DLOENTRY(63, GetFileNameFromBrowse)
DLOENTRY(64, DriveType)
DLOENTRY(66, IsNetDrive)
DLOENTRY(67, Shell_MergeMenus)
DLOENTRY(68, SHGetSetSettings)
DLOENTRY(71, Shell_GetImageLists)
DLOENTRY(72, Shell_GetCachedImageIndex)
DLOENTRY(73, SHShellFolderView_Message)
DLOENTRY(74, SHCreateStdEnumFmtEtc)
DLOENTRY(75, PathYetAnotherMakeUniqueName)
DLOENTRY(77, SHMapPIDLToSystemImageListIndex)
DLOENTRY(85, OpenRegStream)
DLOENTRY(88, SHDoDragDrop)
DLOENTRY(89, SHCloneSpecialIDList)
DLOENTRY(90, SHFindFiles)
DLOENTRY(98, SHGetRealIDL)
DLOENTRY(100, SHRestricted)
DLOENTRY(102, SHCoCreateInstance)
DLOENTRY(103, SignalFileOpen)
DLOENTRY(121, SHFlushClipboard)
DLOENTRY(129, DAD_AutoScroll)
DLOENTRY(131, DAD_DragEnterEx)
DLOENTRY(132, DAD_DragLeave)
DLOENTRY(134, DAD_DragMove)
DLOENTRY(136, DAD_SetDragImage)
DLOENTRY(137, DAD_ShowDragImage)
DLOENTRY(147, SHCLSIDFromString)
DLOENTRY(149, SHFind_InitMenuPopup)
DLOENTRY(151, SHLoadOLE)
DLOENTRY(152, ILGetSize)
DLOENTRY(153, ILGetNext)
DLOENTRY(154, ILAppendID)
DLOENTRY(155, ILFree)
DLOENTRY(157, ILCreateFromPathW)
DLOENTRY(162, SHSimpleIDListFromPath)
DLOENTRY(165, SHCreateDirectory)
DLOENTRY(171, PathCleanupSpec)
DLOENTRY(174, SHCreateShellFolderViewEx)
DLOENTRY(175, SHGetSpecialFolderPathW)
DLOENTRY(176, SHSetInstanceExplorer)
DLOENTRY(179, SHGetNewLinkInfoA)
DLOENTRY(180, SHGetNewLinkInfoW)
DLOENTRY(189, ILCreateFromPathA)
DLOENTRY(190, ILCreateFromPathW)
DLOENTRY(192, SHUpdateImageW)
DLOENTRY(193, SHHandleUpdateImage)
DLOENTRY(195, SHFree)
DLOENTRY(196, SHAlloc)
DLOENTRY(258, LinkWindow_RegisterClass)
DLOENTRY(259, LinkWindow_UnregisterClass)
DLOENTRY(524, RealDriveType)
DLOENTRY(526, SHFlushSFCache)
DLOENTRY(644, SHChangeNotification_Lock)
DLOENTRY(645, SHChangeNotification_Unlock)
DLOENTRY(652, WriteCabinetState)
DLOENTRY(653, PathProcessCommand)
DLOENTRY(654, ReadCabinetState)
DLOENTRY(730, RestartDialogEx)
DLOENTRY(747, SHLimitInputEdit)
};
DEFINE_ORDINAL_MAP(shell32)
//
// !! WARNING !! The entries below must be in alphabetical order, and are CASE SENSITIVE (eg lower case comes last!)
//
DEFINE_PROCNAME_ENTRIES(shell32)
{
DLPENTRY(DragQueryFileA)
DLPENTRY(DragQueryFileW)
DLPENTRY(ExtractAssociatedIconExW)
DLPENTRY(ExtractIconA)
DLPENTRY(ExtractIconExA)
DLPENTRY(ExtractIconExW)
DLPENTRY(ExtractIconW)
DLPENTRY(FindExecutableA)
DLPENTRY(FindExecutableW)
DLPENTRY(SHAppBarMessage)
DLPENTRY(SHBindToParent)
DLPENTRY(SHBrowseForFolderA)
DLPENTRY(SHBrowseForFolderW)
DLPENTRY(SHChangeNotify)
DLPENTRY(SHFileOperationA)
DLPENTRY(SHFileOperationW)
DLPENTRY(SHFormatDrive)
DLPENTRY(SHGetDataFromIDListA)
DLPENTRY(SHGetDataFromIDListW)
DLPENTRY(SHGetDesktopFolder)
DLPENTRY(SHGetFileInfoA)
DLPENTRY(SHGetFileInfoW)
DLPENTRY(SHGetFolderPathA)
DLPENTRY(SHGetFolderPathW)
DLPENTRY(SHGetInstanceExplorer)
DLPENTRY(SHGetMalloc)
DLPENTRY(SHGetPathFromIDListA)
DLPENTRY(SHGetPathFromIDListW)
DLPENTRY(SHGetSpecialFolderLocation)
DLPENTRY(SHGetSpecialFolderPathW)
DLPENTRY(SHLoadInProc)
DLPENTRY(SHPathPrepareForWriteW)
DLPENTRY(ShellAboutA)
DLPENTRY(ShellAboutW)
DLPENTRY(ShellExecuteA)
DLPENTRY(ShellExecuteExA)
DLPENTRY(ShellExecuteExW)
DLPENTRY(ShellExecuteW)
DLPENTRY(Shell_NotifyIconW)
};
DEFINE_PROCNAME_MAP(shell32)