6 * Copyright (C) 2002 Robert Dickenson <robd@reactos.org>
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
24 * COPYRIGHT: See COPYING in the top level directory
25 * PROJECT: ReactOS system libraries
26 * FILE: lib/shell32/misc/stubs.c
27 * PURPOSE: Stubbed exports
28 * PROGRAMMER: Rex Jolliff (rex@lvcablemodem.com)
31 #define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
46 void* _alloca(size_t);
48 #define __FUNCTION__ "unknown"
51 #define NO_SHLWAPI_STREAM
53 //#include <shellapi.h>
57 #define LPSHELLEXECUTEINFOA int*
58 #define LPSHELLEXECUTEINFOW int*
59 #define PNOTIFYICONDATAA int*
60 #define PNOTIFYICONDATAW int*
61 #define PAPPBARDATA int*
62 #define LPSHFILEOPSTRUCTA int*
63 #define LPSHFILEOPSTRUCTW int*
64 #define LPSHQUERYRBINFO int*
65 #define SHFILEINFOA int
66 #define SHFILEINFOW int
72 typedef struct _SHITEMID {
75 } SHITEMID, * LPSHITEMID;
76 typedef const SHITEMID * LPCSHITEMID;
78 typedef struct _ITEMIDLIST {
80 } ITEMIDLIST, * LPITEMIDLIST;
81 typedef const ITEMIDLIST * LPCITEMIDLIST;
83 int CALLBACK BrowseCallbackProc(
90 typedef int (*BFFCALLBACK)(HWND, UINT, LPARAM, LPARAM);
92 typedef struct _browseinfo {
94 LPCITEMIDLIST pidlRoot;
95 LPTSTR pszDisplayName;
101 } BROWSEINFO, *PBROWSEINFO, *LPBROWSEINFO;
104 #define DbgPrint(a,b,c,d)
112 DbgPrint ("%s(%d):%s not implemented\n", __FILE__, __LINE__, __FUNCTION__); \
120 SHChangeNotifyRegister(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5, DWORD Unknown6)
126 SHChangeNotifyDeregister(DWORD Unknown1)
132 SHChangeNotifyUpdateEntryList(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
138 PifMgr_OpenProperties(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
144 PifMgr_GetProperties(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
150 PifMgr_SetProperties(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
156 PifMgr_CloseProperties(DWORD Unknown1, DWORD Unknown2)
162 ILGetDisplayName(DWORD Unknown1, DWORD Unknown2)
168 ILFindLastID(DWORD Unknown1)
174 ILRemoveLastID(DWORD Unknown1)
180 ILClone(DWORD Unknown1)
186 ILCloneFirst(DWORD Unknown1)
192 ILGlobalClone(DWORD Unknown1)
198 ILIsEqual(DWORD Unknown1, DWORD Unknown2)
204 ILIsParent(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
210 ILFindChild(DWORD Unknown1, DWORD Unknown2)
216 ILCombine(DWORD Unknown1, DWORD Unknown2)
222 ILLoadFromStream(DWORD Unknown1, DWORD Unknown2)
228 ILSaveToStream(DWORD Unknown1, DWORD Unknown2)
234 SHILCreateFromPath(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
240 PathIsRootA(LPCSTR path)
247 PathIsRootW(LPCWSTR path)
254 PathBuildRootA(LPSTR Unknown1, int Unknown2)
261 PathBuildRootW(LPWSTR Unknown1, int Unknown2)
268 PathAddExtensionA(LPSTR Unknown1, LPCSTR Unknown2)
275 PathAddExtensionW(LPWSTR Unknown1, LPCWSTR Unknown2)
283 PathFindExtensionA(LPCSTR Unknown1)
290 PathFindExtensionW(LPCWSTR Unknown1)
297 PathAddBackslashA(LPSTR Unknown1)
304 PathAddBackslashW(LPWSTR Unknown1)
311 PathRemoveBlanksA(LPSTR Unknown1)
317 PathRemoveBlanksW(LPWSTR Unknown1)
323 PathFindFileNameA(LPCSTR Unknown1)
330 PathFindFileNameW(LPCWSTR Unknown1)
337 PathRemoveFileSpecA(LPSTR Unknown1)
344 PathRemoveFileSpecW(LPWSTR Unknown1)
351 PathAppendA(LPSTR Unknown1, LPCSTR Unknown2)
358 PathAppendW(LPWSTR Unknown1, LPCWSTR Unknown2)
365 PathCombineA(LPSTR Unknown1, LPCSTR Unknown2, LPCSTR Unknown3)
372 PathCombineW(LPWSTR Unknown1, LPCWSTR Unknown2, LPCWSTR Unknown3)
379 PathStripPathA(LPSTR Unknown1)
385 PathStripPathW(LPWSTR Unknown1)
391 PathIsUNCA(LPCSTR Unknown1)
398 PathIsUNCW(LPCWSTR Unknown1)
405 PathIsRelativeA(LPCSTR Unknown1)
412 PathIsRelativeW(LPCWSTR Unknown1)
419 PathIsExeA(DWORD Unknown1)
425 PathIsExeW(DWORD Unknown1)
431 PathFileExistsA(LPCSTR Unknown1)
438 PathFileExistsW(LPCWSTR Unknown1)
445 PathMatchSpecA(LPCSTR Unknown1, LPCSTR Unknown2)
452 PathMatchSpecW(LPCWSTR Unknown1, LPCWSTR Unknown2)
459 PathMakeUniqueNameA(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
465 PathMakeUniqueNameW(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
471 PathSetDlgItemPathA(HWND Unknown1, int Unknown2, LPCSTR Unknown3)
477 PathSetDlgItemPathW(HWND Unknown1, int Unknown2, LPCWSTR Unknown3)
483 PathQualifyA(DWORD Unknown1)
489 PathQualifyW(DWORD Unknown1)
495 PathStripToRootA(LPSTR Unknown1)
502 PathStripToRootW(LPWSTR Unknown1)
509 PathResolveA(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
515 PathResolveW(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
521 PathGetArgsA(LPCSTR Unknown1)
528 PathGetArgsW(LPCWSTR Unknown1)
535 DoEnvironmentSubst(LPTSTR pszString, UINT cbSize)
542 //DragAcceptFiles (HWND Unknown1, WINBOOL Unknown2)
544 DragAcceptFiles(HWND hWnd, BOOL fAccept)
550 PathQuoteSpacesA(LPSTR Unknown1)
556 PathQuoteSpacesW(LPWSTR Unknown1)
562 PathUnquoteSpacesA(LPSTR Unknown1)
568 PathUnquoteSpacesW(LPWSTR Unknown1)
574 PathGetDriveNumberA(LPCSTR Unknown1)
581 PathGetDriveNumberW(LPCWSTR Unknown1)
588 ParseField(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
594 RestartDialog(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
600 ExitWindowsDialog(DWORD Unknown1)
606 RunFileDlg(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5, DWORD Unknown6)
612 PickIconDlg(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
618 GetFileNameFromBrowse(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5, DWORD Unknown6, DWORD Unknown7)
624 DriveType(DWORD Unknown1)
630 InvalidateDriveType(VOID)
636 IsNetDrive(DWORD Unknown1)
642 Shell_MergeMenus(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5, DWORD Unknown6)
648 SHGetSetSettings(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
654 SHGetNetResource(VOID)
660 SHCreateDefClassObject(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
666 Shell_GetImageList(DWORD Unknown1, DWORD Unknown2)
672 Shell_GetCachedImageIndex(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
678 SHShellFolderView_Message(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
684 SHCreateStdEnumFmtEtc(VOID)
690 PathYetAnotherMakeUniqueName(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
702 SHMapPIDLToSystemImageListIndex(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
708 OleStrToStrN(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
714 StrToOleStrN(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
720 CIDLData_CreateFromIDArray(VOID)
726 SHIsBadInterfacePtr(VOID)
732 SHRegisterDragDrop(DWORD Unknown1, DWORD Unknown2)
738 SHRevokeDragDrop(DWORD Unknown1)
744 SHDoDragDrop(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
750 SHCloneSpecialIDList(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
768 PathGetShortPath(DWORD Unknown1)
774 Win32CreateDirectory(VOID)
780 Win32RemoveDirectory(VOID)
786 SHLogILFromFSIL(DWORD Unknown1)
792 StrRetToStrN(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
798 SHWaitForFileToOpen(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
804 SHGetRealIDL(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
810 SetAppStartingCursor(DWORD Unknown1, DWORD Unknown2)
816 SHRestricted(DWORD Unknown1)
822 SHCoCreateInstance(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
828 SignalFileOpen(DWORD Unknown1)
834 FileMenu_DeleteAllItems(DWORD Unknown1)
840 FileMenu_DrawItem(DWORD Unknown1, DWORD Unknown2)
846 FileMenu_FindSubMenuByPidl(DWORD Unknown1, DWORD Unknown2)
852 FileMenu_GetLastSelectedItemPidls(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
858 FileMenu_HandleMenuChar(DWORD Unknown1, DWORD Unknown2)
864 FileMenu_InitMenuPopup(DWORD Unknown1)
870 FileMenu_InsertUsingPidl(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5, DWORD Unknown6)
876 FileMenu_Invalidate(DWORD Unknown1)
882 FileMenu_MeasureItem(DWORD Unknown1, DWORD Unknown2)
888 FileMenu_ReplaceUsingPidl(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
894 FileMenu_Create(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
900 FileMenu_AppendItem(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5, DWORD Unknown6)
906 FileMenu_TrackPopupMenuEx(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5, DWORD Unknown6)
912 FileMenu_DeleteItemByCmd(DWORD Unknown1, DWORD Unknown2)
918 FileMenu_Destroy(DWORD Unknown1)
924 IsLFNDrive(DWORD Unknown1)
930 FileMenu_AbortInitMenu(VOID)
936 SHFlushClipboard(VOID)
942 RunDLL_CallEntry16(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
948 SHFreeUnusedLibraries(VOID)
954 FileMenu_AppendFilesForPidl(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
960 FileMenu_AddFilesForPidl(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5, DWORD Unknown6, DWORD Unknown7)
966 SHOutOfMemoryMessageBox(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
972 SHWinHelp(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
979 DllGetClassObject(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
984 This is now implemented in the C++ module _stubs.cpp as:
986 STDAPI DllGetClassObject(const CLSID & rclsid, const IID & riid, void ** ppv);
1003 DAD_DragEnterEx(VOID)
1015 DragFinish(HDROP hDrop)
1021 DragQueryFile(HDROP Unknown1, unsigned int Unknown2, char * Unknown3, unsigned int Unknown4)
1028 DragQueryFileA(HDROP Unknown1, unsigned int Unknown2, char * Unknown3, unsigned int Unknown4)
1035 DragQueryFileW(HDROP Unknown1, unsigned int Unknown2, LPCWSTR Unknown3, unsigned int Unknown4)
1041 DragQueryFileA(HDROP hDrop, UINT iFile, LPSTR lpszFile, UINT cch)
1048 DragQueryFileW(HDROP hDrop, UINT iFile, LPWSTR lpszFile, UINT cch)
1062 DragQueryPoint(HDROP Unknown1, LPPOINT Unknown2)
1069 DAD_SetDragImage(DWORD Unknown1, DWORD Unknown2)
1075 DAD_ShowDragImage(DWORD Unknown1)
1081 Desktop_UpdateBriefcaseOnEvent(VOID)
1087 FileMenu_DeleteItemByIndex(DWORD Unknown1, DWORD Unknown2)
1093 FileMenu_DeleteItemByFirstID(DWORD Unknown1, DWORD Unknown2)
1099 FileMenu_DeleteSeparator(DWORD Unknown1)
1105 FileMenu_EnableItemByCmd(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
1111 FileMenu_GetItemExtent(DWORD Unknown1, DWORD Unknown2)
1117 PathFindOnPathA(LPSTR Unknown1, LPCSTR* Unknown2)
1124 PathFindOnPathW(LPWSTR Unknown1, LPCWSTR* Unknown2)
1131 RLBuildListOfPaths(VOID)
1137 SHCLSIDFromString(DWORD Unknown1, DWORD Unknown2)
1143 SHFind_InitMenuPopup(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
1149 SHLoadOLE(DWORD Unknown1)
1155 ILGetSize(DWORD Unknown1)
1161 ILGetNext(DWORD Unknown1)
1167 ILAppend(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
1173 ILFree(DWORD Unknown1)
1179 ILGlobalFree(DWORD Unknown1)
1185 ILCreateFromPath(DWORD Unknown1)
1191 PathGetExtensionA(DWORD Unknown1)
1197 PathGetExtensionW(DWORD Unknown1)
1203 PathIsDirectoryA(LPCSTR Unknown1)
1210 PathIsDirectoryW(LPCWSTR Unknown1)
1217 SHNetConnectionDialog(VOID)
1223 SHRunControlPanel(DWORD Unknown1, DWORD Unknown2)
1229 SHSimpleIDListFromPath(DWORD Unknown1)
1235 StrToOleStr(DWORD Unknown1, DWORD Unknown2)
1241 Win32DeleteFile(DWORD Unknown1)
1247 SHCreateDirectory(DWORD Unknown1, DWORD Unknown2)
1253 CallCPLEntry16(HMODULE hMod, FARPROC pFunc, DWORD dw3, DWORD dw4, DWORD dw5, DWORD dw6)
1255 //CallCPLEntry16(VOID)
1262 SHAddFromPropSheetExtArray(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
1268 SHCreatePropSheetExtArray(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
1274 SHDestroyPropSheetExtArray(DWORD Unknown1)
1280 SHReplaceFromPropSheetExtArray(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
1286 PathCleanupSpecA(DWORD Unknown1, DWORD Unknown2)
1298 SHValidateUNC(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
1304 SHCreateShellFolderViewEx(DWORD Unknown1, DWORD Unknown2)
1310 SHGetSpecialFolderPath(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
1316 SHSetInstanceExplorer(DWORD Unknown1)
1322 DAD_SetDragImageFromListView(VOID)
1328 SHObjectProperties(VOID)
1335 //SHGetNewLinkInfo(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
1338 SHGetNewLinkInfo(LPCTSTR pszLinkTo, LPCTSTR pszDir, LPTSTR pszName, BOOL* pfMustCopy, UINT uFlags)
1346 SHGetNewLinkInfoA(LPCTSTR pszLinkTo, LPCTSTR pszDir, LPTSTR pszName, BOOL* pfMustCopy, UINT uFlags)
1349 SHGetNewLinkInfoA(VOID)
1358 SHGetNewLinkInfoW(LPCWSTR pszLinkTo, LPCWSTR pszDir, LPWSTR pszName, BOOL* pfMustCopy, UINT uFlags)
1361 SHGetNewLinkInfoW(VOID)
1369 RegisterShellHook(DWORD Unknown1, DWORD Unknown2)
1375 ShellMessageBoxW(DWORD Unknown1, ...)
1381 ShellMessageBoxA(DWORD Unknown1, ...)
1387 ArrangeWindows(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
1393 SHHandleDiskFull(VOID)
1399 SHFree(DWORD Unknown1)
1405 SHAlloc(DWORD Unknown1)
1411 SHGlobalDefect(VOID)
1417 SHAbortInvokeCommand(VOID)
1441 SHLocalReAlloc(VOID)
1453 ShortSizeFormatW(VOID)
1459 Printer_LoadIconsW(VOID)
1465 Link_AddExtraDataSection(VOID)
1471 Link_ReadExtraDataSection(VOID)
1477 Link_RemoveExtraDataSection(VOID)
1489 LargeIntegerToString(VOID)
1495 Printers_GetPidl(VOID)
1501 Printer_AddPrinterPropPages(VOID)
1507 Printers_RegisterWindowW(VOID)
1513 Printers_UnregisterWindow(VOID)
1519 SHStartNetConnectionDialog(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
1525 shell32_243(DWORD Unknown1, DWORD Unknown2)
1531 SHInitRestricted(DWORD Unknown1, DWORD Unknown2)
1537 SHGetDataFromIDListA(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
1543 SHGetDataFromIDListW(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
1549 PathParseIconLocationA(LPSTR Unknown1)
1556 PathParseIconLocationW(LPWSTR Unknown1)
1563 PathRemoveExtensionA(LPSTR Unknown1)
1569 PathRemoveExtensionW(LPWSTR Unknown1)
1575 PathRemoveArgsA(LPSTR Unknown1)
1581 PathRemoveArgsW(LPWSTR Unknown1)
1593 SheChangeDirExA(VOID)
1599 SheChangeDirExW(VOID)
1605 SheChangeDirW(DWORD Unknown1)
1611 SheConvertPathW(VOID)
1629 SheGetCurDrive(VOID)
1635 SheGetDirA(DWORD Unknown1, DWORD Unknown2)
1641 SheGetDirExW(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
1647 SheGetDirW(DWORD Unknown1, DWORD Unknown2)
1653 SheGetPathOffsetW(VOID)
1659 SheRemoveQuotesA(VOID)
1665 SheRemoveQuotesW(VOID)
1671 SheSetCurDrive(VOID)
1677 SheShortenPathA(VOID)
1683 SheShortenPathW(VOID)
1689 ShellAboutA (HWND Unknown1, LPCSTR Unknown2, LPCSTR Unknown3, HICON Unknown4)
1696 //ShellAboutW (HWND Unknown1, const LPCWSTR Unknown2, const LPCWSTR Unknown3, HICON Unknown4)
1697 ShellAboutW (HWND Unknown1, LPCWSTR Unknown2, LPCWSTR Unknown3, HICON Unknown4)
1704 ShellExecuteA (HWND Unknown1, const char * Unknown2, const char * Unknown3, char * Unknown4, const char * Unknown5, int Unknown6)
1711 //ShellExecuteEx(DWORD Unknown1)
1713 ShellExecuteEx(LPSHELLEXECUTEINFO lpExecInfo)
1720 //ShellExecuteExA(DWORD Unknown1)
1722 ShellExecuteExA(LPSHELLEXECUTEINFOA lpExecInfo)
1729 //ShellExecuteExW(DWORD Unknown1)
1731 ShellExecuteExW(LPSHELLEXECUTEINFOW lpExecInfo)
1738 ShellExecute (DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5, DWORD Unknown6)
1744 ShellExecuteW (HWND Unknown1, const LPCWSTR Unknown2, const LPCWSTR Unknown3, LPCWSTR Unknown4, const LPCWSTR Unknown5, int Unknown6)
1751 //Shell_NotifyIcon(DWORD Unknown1, DWORD Unknown2)
1752 BOOL WINAPI Shell_NotifyIcon(DWORD dwMessage, PNOTIFYICONDATA pnid)
1759 //Shell_NotifyIconA(DWORD Unknown1, DWORD Unknown2)
1760 BOOL WINAPI Shell_NotifyIconA(DWORD dwMessage, PNOTIFYICONDATAA pnid)
1767 //Shell_NotifyIconW(DWORD Unknown1, DWORD Unknown2)
1768 //BOOL WINAPI Shell_NotifyIconW(DWORD,PNOTIFYICONDATAW);
1769 BOOL WINAPI Shell_NotifyIconW(DWORD dwMessage, PNOTIFYICONDATAW pnid)
1776 Shl1632_ThunkData32(VOID)
1782 Shl3216_ThunkData32(VOID)
1788 StrCpyNA(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
1794 StrNCpyA(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
1812 SHRegCloseKey(DWORD Unknown1)
1818 SHRegOpenKeyA(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
1824 SHRegOpenKeyW(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
1830 SHRegQueryValueA(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
1836 SHRegQueryValueExA(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5, DWORD Unknown6)
1842 SHRegQueryValueW(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
1848 SHRegQueryValueExW(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5, DWORD Unknown6)
1854 SHRegDeleteKeyW(DWORD Unknown1, DWORD Unknown2)
1860 SHAllocShared(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
1866 SHLockShared(DWORD Unknown1, DWORD Unknown2)
1872 SHUnlockShared(DWORD Unknown1)
1878 SHFreeShared(DWORD Unknown1, DWORD Unknown2)
1884 RealDriveType(DWORD Unknown1, DWORD Unknown2)
1890 RealDriveTypeFlags(DWORD Unknown1, DWORD Unknown2)
1896 NTSHChangeNotifyRegister(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5, DWORD Unknown6)
1902 NTSHChangeNotifyDeregister(DWORD Unknown1)
1908 SHChangeNotifyReceive(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
1914 SHChangeNotification_Lock(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
1920 SHChangeNotification_Unlock(DWORD Unknown1)
1926 SHChangeRegistrationReceive(DWORD Unknown1, DWORD Unknown2)
1932 ReceiveAddToRecentDocs(DWORD Unknown1, DWORD Unknown2)
1938 SHWaitOp_Operate(DWORD Unknown1, DWORD Unknown2)
1944 PathIsSameRootA(LPCSTR Unknown1, LPCSTR Unknown2)
1951 PathIsSameRootW(LPCWSTR Unknown1, LPCWSTR Unknown2)
1958 ReadCabinetState(DWORD Unknown1, DWORD Unknown2)
1964 WriteCabinetState(DWORD Unknown1)
1970 PathProcessCommand(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
1976 shell32_654(DWORD Unknown1, DWORD Unknown2)
1982 FileIconInit(DWORD Unknown1)
1994 shell32_714(DWORD Unknown1)
2018 CommandLineToArgvW(DWORD Unknown1, DWORD Unknown2)
2019 //CommandLineToArgvW(LPCWSTR lpCmdLine, int* pNumArgs)
2021 // lpCmdLine - pointer to a command-line string
2022 // pNumArgs - receives the argument count
2028 Control_FillCache_RunDLL(HWND hWnd, HANDLE hModule, DWORD w, DWORD x)
2030 //Control_FillCache_RunDLL(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
2037 //Control_FillCache_RunDLLA(VOID)
2039 Control_FillCache_RunDLLA(HWND hWnd, HANDLE hModule, DWORD w, DWORD x)
2046 //Control_FillCache_RunDLLW(VOID)
2048 Control_FillCache_RunDLLW(HWND hWnd, HANDLE hModule, DWORD w, DWORD x)
2054 VOID Control_RunDLL(HWND hWnd, HINSTANCE hInst_unused, LPCWSTR lpCmdLine, DWORD nCmdShow);
2057 Control_RunDLLA(HWND hWnd, HINSTANCE hInst_unused, LPCSTR lpCmdLine, DWORD nCmdShow)
2059 int reqSize = MultiByteToWideChar(CP_ACP, 0, lpCmdLine, -1, 0, 0) * sizeof(TCHAR);
2061 // LPWSTR pCmdLine = (LPWSTR)malloc(reqSize + 10);
2062 LPWSTR pCmdLine = (LPWSTR)_alloca(reqSize);
2063 if (MultiByteToWideChar(CP_ACP, 0, lpCmdLine, -1, pCmdLine, reqSize)) {
2064 Control_RunDLL(hWnd, hInst_unused, pCmdLine, nCmdShow);
2071 Control_RunDLLW(HWND hWnd, HINSTANCE hInst_unused, LPCWSTR lpCmdLine, DWORD nCmdShow)
2073 Control_RunDLL(hWnd, hInst_unused, lpCmdLine, nCmdShow);
2077 DllInstall(DWORD Unknown1, DWORD Unknown2)
2084 //DoEnvironmentSubstA(DWORD Unknown1, DWORD Unknown2)
2085 DWORD WINAPI DoEnvironmentSubstA(LPCTSTR pszString, UINT cbSize)
2091 //DoEnvironmentSubstW(DWORD Unknown1, DWORD Unknown2)
2092 DWORD WINAPI DoEnvironmentSubstW(LPCTSTR pszString, UINT cbSize)
2099 DragQueryFileAorW(VOID)
2105 DuplicateIcon (HINSTANCE Unknown1, HICON Unknown2)
2112 ExtractAssociatedIconA(HINSTANCE Unknown1, LPCSTR Unknown2, PWORD Unknown3)
2119 ExtractAssociatedIconExA(VOID)
2125 ExtractAssociatedIconExW(VOID)
2131 ExtractAssociatedIconW (HINSTANCE Unknown1, LPCWSTR Unknown2, WORD * Unknown3)
2138 ExtractIconA (HINSTANCE Unknown1, const char * Unknown2, unsigned int Unknown3)
2146 //ExtractIconEx(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
2147 UINT WINAPI ExtractIconEx(LPCTSTR lpszFile, int nIconIndex, HICON* phiconLarge, HICON* phiconSmall, UINT nIcons)
2149 // lpszFile - file name
2150 // nIconIndex - icon index
2151 // phiconLarge - large icon array
2152 // phiconSmall - small icon array
2153 // nIcons - number of icons to extract
2160 //ExtractIconExA(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
2161 //HICON WINAPI ExtractIconExA(LPCSTR,int,HICON*,HICON*,UINT);
2162 //HICON WINAPI ExtractIconExA(LPCSTR lpszFile, int nIconIndex, HICON* phiconLarge, HICON* phiconSmall, UINT nIcons)
2169 ExtractIconExA(LPCSTR lpszFile, int nIconIndex, HICON* phiconLarge, HICON* phiconSmall, UINT nIcons)
2176 //ExtractIconExW(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
2177 //HICON WINAPI ExtractIconExW(LPCWSTR,int,HICON*,HICON*,UINT); // from ming header
2178 //UINT WINAPI ExtractIconExW(LPCTSTR lpszFile, int nIconIndex, HICON* phiconLarge, HICON* phiconSmall, UINT nIcons)
2179 //HICON WINAPI ExtractIconExW(LPCWSTR lpszFile, int nIconIndex, HICON* phiconLarge, HICON* phiconSmall, UINT nIcons)
2186 ExtractIconExW(LPCWSTR lpszFile, int nIconIndex, HICON* phiconLarge, HICON* phiconSmall, UINT nIcons)
2195 ExtractIconW (HINSTANCE Unknown1, const LPCWSTR Unknown2, unsigned int Unknown3)
2202 ExtractIconResInfoA(VOID)
2208 ExtractIconResInfoW(VOID)
2214 ExtractVersionResource16W(VOID)
2220 FindExeDlgProc(VOID)
2227 FindExecutableA(const char * Unknown1, const char * Unknown2, char * Unknown3)
2235 // FindExecutableW(LPCWSTR,LPCWSTR,LPWSTR);
2236 FindExecutableW(const LPCWSTR Unknown1, const LPCWSTR Unknown2, LPWSTR Unknown3)
2243 FreeIconList(DWORD Unknown1)
2249 InternalExtractIconListA(VOID)
2255 InternalExtractIconListW(VOID)
2267 OpenAs_RunDLLA(VOID)
2273 OpenAs_RunDLLW(VOID)
2279 PrintersGetCommand_RunDLL(VOID)
2285 PrintersGetCommand_RunDLLA(VOID)
2291 PrintersGetCommand_RunDLLW(VOID)
2297 RealShellExecuteA(VOID)
2303 RealShellExecuteExA(VOID)
2309 RealShellExecuteExW(VOID)
2315 RealShellExecuteW(VOID)
2321 RegenerateUserEnvironment(VOID)
2328 SHAddToRecentDocs (UINT Unknown1, LPCVOID Unknown2)
2334 //SHAppBarMessage(DWORD Unknown1, DWORD Unknown2)
2335 UINT WINAPI SHAppBarMessage(DWORD dwMessage, PAPPBARDATA pData)
2346 SHBrowseForFolder(LPBROWSEINFO Unknown1)
2353 SHBrowseForFolderA(DWORD Unknown1)
2359 SHBrowseForFolderW(DWORD Unknown1)
2366 SHChangeNotify (LONG Unknown1, UINT Unknown2, LPCVOID Unknown3, LPCVOID Unknown4)
2379 //SHEmptyRecycleBinA(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
2380 HRESULT WINAPI SHEmptyRecycleBinA(HWND hwnd, LPCTSTR pszRootPath, DWORD dwFlags)
2387 //SHEmptyRecycleBinW(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
2388 HRESULT WINAPI SHEmptyRecycleBinW(HWND hwnd, LPCTSTR pszRootPath, DWORD dwFlags)
2395 SHFileOperation (LPSHFILEOPSTRUCT Unknown1)
2402 //SHFileOperationA(DWORD Unknown1)
2406 SHFileOperationA(LPSHFILEOPSTRUCTA lpFileOp)
2413 //SHFileOperationW(DWORD Unknown1)
2416 SHFileOperationW(LPSHFILEOPSTRUCTW lpFileOp)
2423 SHFormatDrive(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
2430 SHFreeNameMappings (HANDLE Unknown1)
2436 SHGetDesktopFolder(DWORD Unknown1)
2442 //SHGetFileInfo (LPCTSTR Unknown1, DWORD Unknown2, SHFILEINFO FAR * Unknown3, UINT Unknown4, UINT Unknown5)
2444 SHGetFileInfo(LPCTSTR pszPath, DWORD dwFileAttributes, SHFILEINFO* psfi, UINT cbFileInfo, UINT uFlags)
2452 //SHGetFileInfoA(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
2453 //DWORD WINAPI SHGetFileInfoA(LPCSTR,DWORD,SHFILEINFOA*,UINT,UINT);
2457 SHGetFileInfoA(LPCSTR pszPath, DWORD dwFileAttributes, SHFILEINFOA* psfi, UINT cbFileInfo, UINT uFlags)
2464 //SHGetFileInfoW(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
2468 SHGetFileInfoW(LPCTSTR pszPath, DWORD dwFileAttributes, SHFILEINFOW* psfi, UINT cbFileInfo, UINT uFlags)
2475 SHGetInstanceExplorer(DWORD Unknown1)
2481 SHGetMalloc(DWORD Unknown1)
2488 SHGetPathFromIDList (LPCITEMIDLIST Unknown1, LPTSTR Unknown2)
2495 SHGetPathFromIDListA(DWORD Unknown1, DWORD Unknown2)
2501 SHGetPathFromIDListW(DWORD Unknown1, DWORD Unknown2)
2507 SHGetSettings(DWORD Unknown1, DWORD Unknown2)
2515 SHGetSpecialFolderLocation (HWND Unknown1, int Unknown2, LPITEMIDLIST * Unknown3)
2522 SHHelpShortcuts_RunDLL(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
2528 SHHelpShortcuts_RunDLLA(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
2534 SHHelpShortcuts_RunDLLW(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
2540 SHLoadInProc(DWORD Unknown1)
2546 //SHQueryRecycleBinA(DWORD Unknown1, DWORD Unknown2)
2548 SHQueryRecycleBinA(LPCTSTR pszRootPath, LPSHQUERYRBINFO pSHQueryRBInfo)
2555 //SHQueryRecycleBinW(DWORD Unknown1, DWORD Unknown2)
2557 SHQueryRecycleBinW(LPCTSTR pszRootPath, LPSHQUERYRBINFO pSHQueryRBInfo)
2564 SHUpdateRecycleBinIcon(VOID)
2570 WOWShellExecute(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5, DWORD Unknown6, DWORD Unknown7)
2577 DllCanUnloadNow(VOID)
2584 DllGetVersion(DWORD Unknown1)
2590 DllGetClassObject(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
2595 HWND WINAPI CreateStatusWindowW( LONG style,
2604 SHGetFreeDiskSpace(VOID)
2610 SHGetSpecialFolderPathA(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
2616 SHGetFolderPathA(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
2622 SHGetFolderPathW(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)
2628 SHGetFolderLocation(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5)