VS2008: Manifest einbinden in EXE



  • Bisher habe ich ein benutzerdefiniertes Element TYP 24 erstellt und
    ihm die ID 1 gegeben. Darin wurde dann der Manifestinhalt abgeworfen
    und #include "commctrl.h" in die Dlg.cpp gepackt.

    Aktuell scheint es nicht zu funktionieren:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
    <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> 
    <assemblyIdentity 
        version="1.0.0.0" 
        processorArchitecture="X86" 
        name="Microsoft.Windows.MEINPROJEKTNAME" 
        type="win32" 
    /> 
    <description>Beschreibung</description> 
    <dependency> 
        <dependentAssembly> 
            <assemblyIdentity 
                type="win32" 
                name="Microsoft.Windows.Common-Controls" 
                version="6.0.0.0" 
                processorArchitecture="X86" 
                publicKeyToken="6595b64144ccf1df" 
                language="*" 
            /> 
        </dependentAssembly> 
    </dependency> 
    </assembly>
    

    Nur die Manifestdatei die das VS08 generiert zeigt eine Wirkung (XPlook),
    wenn ich die manifest neben der EXE abwerfe...In der Ressource 24 jedoch = keine Chance.



  • Ahh, hab schon...das fehlte:

    #if defined _M_IX86 
    #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"") 
    #elif defined _M_IA64 
    #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='ia64' publicKeyToken='6595b64144ccf1df' language='*'\"") 
    #elif defined _M_X64 
    #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"") 
    #else 
    #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"") 
    #endif
    

  • Mod

    VS-2008 verwaltet die Manifeste selber durch den eigenen Manifest Compiler.



  • Hallo Martin,

    ganz doof gefragt. Wie binde ich dies dann automatisch an die exe?

    Oder meintest du nur, dass ich den Inhalt der Manifestdatei ganz einfach
    nru in meine Ressource reinkopiere und anstelle meines o.g. XML-Aufbaues verwende?



  • Projekteigenschaften -> Konfigurationseigenschaften -> Manifesttool -> Eingabe und Ausgabe -> Zusätzliche Manifestdateien

    Da kannste ganz einfach ein Manifest-XML einbinden.


  • Mod

    Hinzufügen einer Datei mit Endung manifest geht auch. Allerdings sollte man die Applikationsdaten nicht dahinein packen, denn die stehen in den Projektdaten!


Anmelden zum Antworten