Visual Studio 2005 Sicherheits-updates und CRT-DLL-Versionen in manifest

Neuesten Visual Studio 2005 Sicherheits-updates verursachen Probleme für uns.

Wir erstellen und intern verteilen SDKs in C++ geschrieben. Diese SDKs sind eine Sammlung von header-Dateien und statische Bibliotheken nur. Nach der Installation des Sicherheitsupdates unsere SDKs hängt jetzt auf die neueren Versionen der Microsoft Visual C ++ CRT-DLLs. Diese SDKs verwendet werden downstream-Projekte, die EXE-Dateien.

Wenn man diese EXE-Dateien wird gebaut mit einem mix von SDKs (einige aus der Zeit vor den Sicherheits-updates, die einige danach), dann die EXE-Datei produziert, verweist auf zwei Sätze von MSVC-runtime-DLLs. E. g:

<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
    <dependency>
        <dependentAssembly>
            <assemblyIdentity type="win32" name="Microsoft.VC80.CRT" version="8.0.50727.4053" processorArchitecture="amd64" publicKeyToken="1fc8b3b9a1e18e3b">
            </assemblyIdentity>
        </dependentAssembly>
    </dependency>
    <dependency>
        <dependentAssembly>
            <assemblyIdentity type="win32" name="Microsoft.VC80.CRT" version="8.0.50727.762" processorArchitecture="amd64" publicKeyToken="1fc8b3b9a1e18e3b">
            </assemblyIdentity>
        </dependentAssembly>
    </dependency>
</assembly>

Bedeutet dies, dass zur Laufzeit diese EXE-Datei wird mit beiden Versionen der DLL? Bedeutet das, dass wir uns verteilen müssen beide Versionen von der MSVC-Runtime-DLLs mit dieser EXE?

Gibt es einen einfachen Weg, um dieses problem zu vermeiden, ohne dass alle SDKs werden mit Visual Studio 2005 Sicherheits-patches in Ort? (Dies wäre nicht wünschenswert, für einige der älteren und sehr stabil-SDKs, die wir nicht wollen, um wieder aufzubauen unnötig)

Ist möglich einfach schreiben die manifest-Datei, die entweder auf die SDKs oder die endgültige EXE-Datei, so dass nur eine version des MSVC-CRT-DLLs sind erwähnt?


Mein Verständnis ist, dass die relevanten updates sind wie folgt:

Security update für Microsoft Visual Studio 2005 Service Pack 1: KB971090

http://go.microsoft.com/fwlink/?LinkId=155934

Security update für Microsoft Visual Studio 2008 Service Pack 1: KB971092

http://go.microsoft.com/fwlink/?LinkID=155933


Habe ich entdeckt, zwei andere Fragen, die ähnlich sind:

VC++: KB971090 und wählen Sie Visual C-Runtime-DLL-Abhängigkeiten

Unterstützt die neuesten Visual Studio 2005 Sicherheitsupdate Ursache C runtime library Probleme bei der hot-fixing Kunden-Websites

  • warum wurde diese Umstellung auf community-wiki?
Schreibe einen Kommentar