Visual Studio 2015 Laufzeitabhängigkeiten oder wie Universal CRT loswerden?

Kompilierte einige DLLs, die Visual Studio 2015 verwenden, und versuchten, sie auf einigen älteren Windows 7/64-Bit-Versionen bereitzustellen. Versucht auch zu erraten, welche DLLs für die Anwendung benötigt werden, um MSVCP140.DLL & VCRUNTIME140.DLL zu starten und zu kopieren - aber die Anwendung konnte die vs2015-DLL nicht laden. Begann zu analysieren, was falsch ist - und Abhängigkeits-Walker zeigte Abhängigkeiten von folgenden DLLs:

API-MS-WIN-CRT-MATH-L1-1-0.DLL
API-MS-WIN-CRT-HEAP-L1-1-0.DLL
API-MS-WIN-CRT-CONVERT-L1-1-0.DLL
API-MS-WIN-CRT-STRING-L1-1-0.DLL
API-MS-WIN-CRT-STDIO-L1-1-0.DLL
API-MS-WIN-CRT-RUNTIME-L1-1-0.DLL
API-MS-WIN-CRT-FILESYSTEM-L1-1-0.DLL
API-MS-WIN-CRT-TIME-L1-1-0.DLL

Dies war besonders überraschend, da CRT meines Erachtens für das Starten von DLL / EXE verantwortlich ist und keine übergeordneten Dienste bereitstellt.

Ok, ich habe versucht herauszufinden, wie ich sie loswerden oder zumindest minimieren kann.

Einen Artikel gefunden:https: //blogs.msdn.microsoft.com/vcblog/2015/03/03/introducing-the-universal-crt

It erwähnt die Veröffentlichung statischer Bibliotheken - also dachte ich, ich könnte eine Verknüpfung mit ihnen herstellen und die Abhängigkeit * L1-1-0.DLL * beseitigen, aber egal, was ich versucht habe - ich hatte keinen Erfolg. Ich habe versucht, eine Verknüpfung zu libvcruntime.lib, libucrt.lib, libcmt.lib herzustellen, die Linkeroption "/nodefaultlib:vcruntime.lib" zu deaktivieren und sogar das Include-Verzeichnis $ (UniversalCRT_IncludePath) hinzuzufügen und einige zu überschreiben Ich habe versucht zu erraten, dass sie funktionieren - keiner meiner Versuche hat geholfen.

Als Zwischenlösung greife ich auf Visual Studio 2013 zurück, wo es nur zwei CRT-DLLs gibt: msvcp120.dll, msvcr120.dll.

Natürlich werden Sie wahrscheinlich empfehlen, die Laufzeit von Visual Studio 2015 zu installieren, aber eine unserer Anforderungen besteht darin, eigenständige ausführbare Dateien zu unterstützen - dies funktioniert ohne Installation -, sodass eine zusätzliche Installation vorerst nicht in Frage kommt.

Kannst du mir etwas anderes empfehlen, als auf die Ankunft von Visual Studio 2017 zu warten?

Antworten auf die Frage(8)

Ihre Antwort auf die Frage