Side-by-Side Konfiguration (???) unter VS 2008 Beta



  • Hallo,
    Ich hab ein programm unter Visual Studio C++ 2008 Beta geschrieben, als Release compilet und möchts jetzt auf anderen computern testen.
    Unter Win Vista hats jetzt einen Fehler mit der Side-by-Side konfiguration gegeben. Wie behebe ich diesen?
    Gruß, lh



  • Beta-Versionen darfst Du nicht auf anderen Rechnern installieren.

    Warte ab bis die RTM Version (demnächst) rauskommt und dann kannst Du es machen.

    Dazu musst Du das passende "vc_redistx86.exe" auf dem Zielrechner installieren, oder ein passenden Manifest und die CRT-DLLs in das Applikationsverzeichnis mit passendem Manifest dazu reinlegen.



  • Danke, was sind eigentlich die Manifests?



  • Ein Manifest ist eine XML-Datei mit einem speziellen Inhalt...
    DIes kann entweder als Resource der Applikation beigegeben werden oder (bei EXEn) extern mit dem Namen

    name-der.exe.manifest
    

    Ein Manifest für die Debug-Version der CRT von VS2005 sieht z.B. so aus:

    <?xml version='1.0' encoding='UTF-8' standalone='yes'?>
    <assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
      <dependency>
        <dependentAssembly>
          <assemblyIdentity type='win32' name='Microsoft.VC80.DebugCRT' version='8.0.50727.762' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
        </dependentAssembly>
      </dependency>
    </assembly>
    

    Ein Vista Manifest sieht z.B: so aus:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> 
      <!-- Identify the application security requirements. -->
      <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
        <security>
          <requestedPrivileges>
            <requestedExecutionLevel
              level="asInvoker"
              uiAccess="false"/>
            </requestedPrivileges>
           </security>
      </trustInfo>
    </assembly>
    

    Ohne dieses Manifest wir Deine Applikation unter Vista "virtualisiert" (d.h. Zugriffe auf HKLM und %ProgramFiles% werden in einem speziellen Ordner umgeleitet)


Anmelden zum Antworten