Martin Storsjö martin@martin.st writes:
The real vcruntime140.dll actually also do some calls to ucrtbase.dll (linked via the api-ms-win-crt-* stub dlls), but not all the real functions - it only links to the following ones: terminate abort strcpy_s malloc _free_base free _malloc_base _calloc_base __stdio_common_vsprintf_s atol
(Additionally it links to a few symbols from kernel32.dll and one from advapi32.dll.)
Please don't look into the internal details of the native dll.
Given this, I still think this DLL makes sense as a standalone DLL instead of just a stub forwarding to ucrtbase, since that's what the original one does as well. At worst some of the functions may need to have subtly different behaviour in different versions (which I guess is the main reason for the DLL existing in the first place).
It seems to me that you should start with a forwarding stub. If at some point there's a good reason for duplicating things, we can do it then.