Reputation: 173
I have a Microsoft VSTO project that I integrated some C++ libraries with (specifically POCO C++). I have been trying to put together an installer (64 bit version) and when I install I am seeing that some libraries are not being located. Explicitly using depends (dependency walker) is showing libraries like
--> api-ms-win-core-wow64-l1-1-1.dll -> kernelbase.dll
--> api-ms-win-core-xstate-l2-1-0.dll -> kernelbase.dll
--> api-ms-win-core-xstate-l2-1-1.dll -> kernelbase.dll
--> api-ms-win-core-psapi-l1-1-0.dll -> kernelbase.dll
--> api-ms-win-core-psapi-ansi-l1-1-0.dll -> kernelbase.dll
are showing as missing. Now these are defined as windows redirect libraries. But on a system they are showing as missing. Now I can install the application on development systems and these libraries show up ok. I thought it was possibly an incorrect VC++ target chain so I lowered to target CVS 2015. But same libraries show up as missing.
Can someone help describe how to identify and determine what deployment should be used (VS C++ wise).
Peter
Upvotes: 2
Views: 592
Reputation: 17027
It might be helpful to undertstand that many old libraries have been replaced by "umbrella" libraries as explained here:
An umbrella library is a single static-link library that exports a subset of Win32 APIs. For example, an umbrella library named OneCore.lib provides the exports for the subset of Win32 APIs that are common to all Windows 10 devices.
For W10:
api-ms-win-core-libraryloader-l1-2-0.dll
in 10.0.14393.Upvotes: 2