vcruntime contains the code that is linked into ucrtbase (in VS it is also provided as vcruntime140.dll)
vcstartup contains the code that is statically linked into executables that link to ucrtbase.dll. In Visual Studio this is part of msvcrt.lib (the import library for msvcrt), similar to our current msvcrtex, and it gets linked when you link to ucrtbase as well. The name is based on the folder name in the library.
Both libraries share some code, but each file is only compiled once.
Implementing missing features...
JIRA issue: CORE-9368
- Modify shdocvw.spec.
- Add dll/win32/shdocvw/winlist.cpp.
- Add stubs of WinList_* functions.
- Add WinList_* function prototypes
to <shdocvw_undoc.h>.
- Adapt explorer and rshell to new
WinList_Init prototype.
Improve usability. Re-trial of #7679 with different approach.
JIRA issue: CORE-12905
- Add ShellSmallIconSize, ShellLargeIconSize, and
ShellIconBPP global variables in iconcache.cpp.
- Add SIC_GetMetricsValue, SIC_GetLargeIconSize,
SIC_GetSmallIconSize, and SIC_GetIconBPP helper
functions in iconcache.cpp.
- Load shell icon size from registry key
"HKEY_CURRENT_USER\\Control Panel\\Desktop\\WindowMetrics".
- Load icon BPP (bits per pixel) from registry.
- Fix SIC_Initialize and SIC_LoadIcon functions for icon size.
- Fix SHGetFileInfoW function for SHGFI_SHELLICONSIZE flag.
URLs are getting old. We have to
update URLs for documentation
purpose.
JIRA issue: CORE-19963
- Refresh old URLs.
- Add " (DEAD_LINK)" labels
to dead links.
- Use MS Learn links rather
than MSDN ones.
- Some dead links revived by
Web Archive.
- Don't change Wine Tests
and Wine Sync.
- Don't change 3rd party libraries.
- Don't append "redirected" labels.
Start menu items were created after the wizard had finished. This patch moves the creation of the start menu items into the process page of the wizard and enables the 2nd item of the task list.
Implementing missing features...
JIRA issue: CORE-19278
- Move function definition from
stubs.cpp to utils.cpp.
- Implement SHIsBadInterfacePtr
function in utils.cpp.
- Add prototype to <undocshell.h>.
Fixes crash of mshtml_winetest:htmldoc (introduced by 716613c). Please do not ask me why.
The test started crashing with commit 716613cddc "[CMAKE] Use new policies for CMP0005 and CMP0018 (#1481)", which moved this definition from the command line to urlmon_main.h. This got later removed by commit 6c3c2e33f6 "[URLMON] Sync with Wine Staging 4.18. CORE-16441"
This avoids a linker error due to a duplicated symbol in ntdll and the statically linked chkstk library. This happens when the linker first resolves _chkstk from the CRT or the chkstk library (which also pulls in _alloca_probe(_16)) and then tries to resolve _alloca_probe(_16) from ntdll.
Follow-up of 42d5dfd3de.
- Revert "shell32: Fix ShellExecute for non-filespec paths." 0bad544aab.
- Apply "shell32: Look for the file name without extension also for the path search case." 38b6640be9.
- Clear leading/trailing whitespaces (an improvement by Doug Lyons).
- Update the comment for xlpFile buffer definition, to match the current code behaviour.
This fixes some failures for the following tests:
- shell32_apitest:ShellExecCmdLine: 12 failures less,
- shell32_apitest:ShellExecuteEx: 5 failures less,
- shell32_winetest:shlexec: crash fixed, now 13 failures as before,
- wshom_winetest:wshom: crash fixed, now 2 failures less too (0 failures).
I've also tested: the problem which was intended to be fixed by the guilty commit (CORE-19953) still remains fixed after this change.
CORE-19964
Implemementing missing features...
JIRA issue: CORE-19278
- Add netapi32 and secur32 delay importing.
- Move function definition from stubs.cpp into utils.cpp.
- Include some security headers in utils.cpp.
- Adapt <secext.h> to C++.
- Add prototype to <undocshell.h>.
i.e. fix build.
When these get synced with more recent Wine version, you can remove
this define once you get past a "Enable compilation with long types"
Wine commit or similar.
Improve consistency of code management.
JIRA issue: CORE-19278
- Move SHOpenPropSheetA from
utils.cpp into propsheet.cpp that
contains SHOpenPropSheetW.
Get rid from bogus SearchPathW() call, which is marked as most likely not needed in the comment above (by Wine). Simply get a length of the file name and use the file name directly instead, with checking for its validity too. Similarly as it's done for other cases.
That call seems actually not needed because it is already done using SearchPathW() in another parts of the code in this file, before calling SHELL_ArgifyW().
Fixes another heap corruption when trying to login via OAuth menthod in SpotifyXP 2.0.3 Beta (nightly build). The previous commit did not fix the bug fully, as I discovered it later.
CORE-19953
Because SHOpenPropSheetW() is modal, there is no way for us to keep COM
alive on the original thread until the dialog completes, so a cloned
data object is used instead so that the property sheet handlers may access
the object even after ShellExecute() has returned (this is only relevant
for callers like Taskmgr that does not initialize COM even though MSDN
says they should).
Addendum to afc130ff3f (PR #7571). CORE-19933
- Fix typos and improve Portuguese (pt-PT) translation.
- Add missing accel keys and fix accel collisions.
- Improve Portuguese (pt-PT) translation. Fix text box width to fit all text.