title: VS2017 and missing "api-ms-win-core-rtlsupport-l1-2-0.dll" on Win7/XP
body: <p>After porting some of my programs from VS2015 to VS2017 in noticed that the binaries no longer run on Windows 7 or Windows XP - even though they <em>have</em> been compiled with <code>v141_xp</code> toolset. The program fails to start with missing DLL <code>api-ms-win-core-rtlsupport-l1-2-0.dll</code> (note the <strong>2</strong>).</p>
  <p>I'm well aware that those <code>api-ms-win-*</code> DLL's belong to the UCRT and that, starting with VS2015, I have to redistribute the UCRT DLL's from the Windows 10 SDK (to be found at <code>Redist\ucrt\DLLs</code> in the Windows 10 SDK directory), along with my application - just redistributing the <code>vcruntime140.dll</code> and <code>msvcp140.dll</code> is <strong>not</strong> sufficient. But there is only <code>api-ms-win-core-rtlsupport-l1-1-0.dll</code> in my Windows SDK directory, but <strong>not</strong> <code>api-ms-win-core-rtlsupport-l1-2-0.dll</code>. I just downloaded and re-installed the latest Windows SDK (10.0.15063), just to be sure. Still the DLL in question is absent!</p>
  <p>I also tried installing the VS2017 Redistributable package on the Windows 7 (or XP) machine via <code>VC_redist.x86.exe</code> - latest version downloaded from Visual Studio web-site (14.11.25325). Obviously that copies the <code>api-ms-win-*</code> DLL's  into the &quot;System32&quot; directory. But, again, only <code>api-ms-win-core-rtlsupport-l1-1-0.dll</code>, but <strong>not</strong> <code>api-ms-win-core-rtlsupport-l1-2-0.dll</code>. App still won't start.</p>
  <p><a href="https://i.stack.imgur.com/DxVeO.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/DxVeO.png" alt="enter image description here" /></a></p>
  <p><a href="https://i.stack.imgur.com/nw07g.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/nw07g.png" alt="enter image description here" /></a></p>
  <hr />
  <p><strong>[EDIT]</strong></p>
  <p>This of course only applies if I link against the DLL runtime (<code>/MD</code>). If I link against the &quot;static&quot; runtime (<code>/MT</code>) I get a binary that has <strong>no</strong> DLL dependencies on UCRT and runs fine on Windows 7 and XP.</p>
  <hr />
  <p><strong>[EDIT #2]</strong></p>
  <p>Please refer to my other post (including EDIT) for the resolution of the mess:<br />
  <a href="https://stackoverflow.com/a/45773325/1766377">https://stackoverflow.com/a/45773325/1766377</a></p>