reactos/dll/win32/shell32
Hermès Bélusca-Maïto a373198419
[SHELL32] Fix boot to shell, addendum to commit 14599b0a.
shell32.ShellMessageBoxW redirects to shlwapi.ShellMessageBoxWrapW.
However the latter one (shlwapi) is exported by ordinal only.
Trying to use in shell32.spec file the following syntax:

  182 varargs ShellMessageBoxW() shlwapi.ShellMessageBoxWrapW

will therefore fail at runtime, because Windows/ReactOS will fail to
snap shlwapi.ShellMessageBoxWrapW.
Using instead an export by orginal:

  182 varargs ShellMessageBoxW() shlwapi.#388

actually fails as well, but at link time, by both MSVC' LINK and GNU's
dlltool.
This generates a .def file containing the line:

  ShellMessageBoxW=shlwapi.#388 @182

It is not clear why it fails, because according to:
https://docs.microsoft.com/en-us/cpp/build/reference/exports?view=vs-2019
and
https://devblogs.microsoft.com/oldnewthing/20121116-00/?p=6073
this should be possible.
However one encounters the same errors as those described at:
https://groups.google.com/forum/#!topic/microsoft.public.vc.language/AVnx-EnYdsY
and
https://www.xspdf.com/questions/22333.shtml
...

So instead we use another trick, that appears to be already in use in
the shell32.spec. Since the shlwapi functions are imported because we
link to it, this means that ShellMessageBoxWrapW() is already available
through this import. So we can specify it in the .spec file as is,
without a full name prefixed with "shlwapi." .
Therefore the associated shell32.ShellMessageBoxW function will instead
link to the small ShellMessageBoxWrapW() import stub that is generated
automatically.
2020-09-14 05:54:13 +02:00
..
dialogs [SHELL32] Improve Format dialog debug log (trivial) (#3176) 2020-09-13 23:05:04 +02:00
droptargets [SHELL32] Demote noisy ERR() to TRACE() in CRecyclerDropTarget (#3093) 2020-08-25 19:12:17 +03:00
folders [TRANSLATION][SHELL32] Localization of "System Folder" in My Computer types (#3168) 2020-09-13 23:16:19 +02:00
lang [TRANSLATION][SHELL32] Localization of "System Folder" in My Computer types (#3168) 2020-09-13 23:16:19 +02:00
res [SHELL32] Implement Move To Folder (#3056) 2020-08-18 05:30:54 +09:00
shelldesktop [SHELL32] Big fix for change notification (#3048) 2020-09-03 13:36:31 +09:00
shellmenu [SHELL32] Delete IDM_RECENTMENUHEAD resource menu (#2705) 2020-05-01 15:58:58 +09:00
shellrecyclebin
wine [SHELL32][SHLWAPI] Forward shell32.ShellMessageBoxW directly to shlwapi.ShellMessageBoxWrapW. (#3179) 2020-09-13 22:44:58 +02:00
avi_res.rc
bitmap_res.rc
CActiveDesktop.cpp
CActiveDesktop.h
CCopyToMenu.cpp [SHELL32] Enable CopyTo/MoveTo textbox functionality (#3075) 2020-08-20 11:35:14 +09:00
CCopyToMoveToMenu.h [SHELL32] Enable CopyTo/MoveTo textbox functionality (#3075) 2020-08-20 11:35:14 +09:00
CDefaultContextMenu.cpp [BROWSEUI][SHELL32] Implement MoveTo/CopyTo buttons (#3128) 2020-09-07 09:42:43 +09:00
CDefView.cpp [SHELL32] Big fix for change notification (#3048) 2020-09-03 13:36:31 +09:00
CDefViewBckgrndMenu.cpp [SHELL32] Modify context menu to include Align To Grid, and remove Line Up Icons 2020-04-20 23:13:09 +03:00
CDefViewDual.cpp
CDropTargetHelper.cpp
CDropTargetHelper.h
CEnumIDListBase.cpp
CEnumIDListBase.h
CExtractIcon.cpp
CFileSysBindData.cpp
CFolder.cpp
CFolder.h
CFolderItems.cpp
CFolderItems.h
CFolderItemVerbs.cpp
CFolderItemVerbs.h
CFolderOptions.cpp
CFolderOptions.h
changenotify.cpp [SHELL32] Make 'hwndServer == NULL' spams quiet 2020-09-06 22:48:29 +09:00
CIDLDataObj.cpp [SHELL32] Ensure CIDLDataObject::GetData always returns an STGMEDIUM that is safe for use with ReleaseStgMedium 2020-04-20 17:36:43 +03:00
CMakeLists.txt [SHELL32] Implement Move To Folder (#3056) 2020-08-18 05:30:54 +09:00
CMoveToMenu.cpp [SHELL32] Enable CopyTo/MoveTo textbox functionality (#3075) 2020-08-20 11:35:14 +09:00
CNewMenu.cpp [SHELL32] Delete unused CNewMenu::m_wszPath 2019-12-03 13:46:35 +09:00
CNewMenu.h [SHELL32] Delete unused CNewMenu::m_wszPath 2019-12-03 13:46:35 +09:00
COpenWithMenu.cpp [BOOT][DIRECTX][SHELL32] Unneeded semicolons (trivial) (#3133) 2020-09-08 21:57:13 +02:00
COpenWithMenu.h
CQueryAssociations.cpp
CQueryAssociations.h
CSendToMenu.cpp [SENDMAIL][ZIPFLDR][MYDOCS] Fix creation of SendTo files (#2616) 2020-04-23 04:19:20 +09:00
CSendToMenu.h [SENDMAIL][ZIPFLDR][MYDOCS] Fix creation of SendTo files (#2616) 2020-04-23 04:19:20 +09:00
CShellDispatch.cpp
CShellDispatch.h
CShellItem.cpp [PSDK] Support STRICT_TYPED_ITEMIDS in shlobj.h. CORE-16385 2020-01-03 22:42:34 +01:00
CShellItem.h
CShellLink.cpp [SHELL32] Watch for common desktop and SHCNE_CREATE for IShellLink::Save (#2515) 2020-04-09 16:56:54 +09:00
CShellLink.h
CUserNotification.cpp
CUserNotification.h
debughlp.cpp
debughlp.h
folders.cpp
icon_res.rc
iconcache.cpp [SHELL32] Do not return -1 if a file is not valid or not found - ExtractIconEx() (#2113) 2019-12-12 08:24:20 +09:00
precomp.h [SHELL32][SHLWAPI] Forward shell32.ShellMessageBoxW directly to shlwapi.ShellMessageBoxWrapW. (#3179) 2020-09-13 22:44:58 +02:00
rgs_res.rc [SHELL32] Implement Move To Folder (#3056) 2020-08-18 05:30:54 +09:00
shell32.cpp [SHELL32] Implement Move To Folder (#3056) 2020-08-18 05:30:54 +09:00
shell32.rc
shell32.spec [SHELL32] Fix boot to shell, addendum to commit 14599b0a. 2020-09-14 05:54:13 +02:00
shell32_shldisp.idl
shell32_version.h
shell32_version.rc
shfldr.h
shlexec.cpp [SHELL32] Command 'start C:' should open 'C:\' (#2642) 2020-04-25 11:01:20 +09:00
shlfileop.cpp [SHELL32] Improve the displayed error on file copy / displacement + simplify code. 2019-12-24 18:30:54 +01:00
shlfolder.cpp [SHELL] Add SHOpenFolderAndSelectItems to shlobj.h. 2020-01-18 13:10:35 +01:00
shobjidl_local.idl
shresdef.h [TRANSLATION][SHELL32] Localization of "System Folder" in My Computer types (#3168) 2020-09-13 23:16:19 +02:00
stubs.cpp [SHELL32] Big fix for change notification (#3048) 2020-09-03 13:36:31 +09:00
systray.cpp [Explorer|Shell32] 2020-03-21 19:13:55 -05:00
vista.c