Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Manifest Problem (https://www.delphipraxis.net/95364-manifest-problem.html)

DerAndereMicha 5. Jul 2007 15:46


Manifest Problem
 
Hallo Zusammen,

hat jemand von Euch ne Idee wie ne Manifest-Datei (oder Ressource) aussehen müßte, die XP / Vista dazu zwingt die alten Common-Controls zu verwenden. Auf ein Manifest als solches kann ich nicht verzichten, da mein Programm unter Vista nicht im Virtualisierungsmodus laufen soll. Bis jetzt habe ich leider kein Beispiel dafür gefunden.

So sieht mein Manifest aus:

Delphi-Quellcode:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <assemblyIdentity
    type="win32"
    name="MyApp"
    version="1.0"
    processorArchitecture="*"/>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity
        type="win32"
        name="Microsoft.Windows.Common-Controls"
        version="6.0.0.0"
        publicKeyToken="6595b64144ccf1df"
        language="*"
        processorArchitecture="*"/>
    </dependentAssembly>
  </dependency>
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel
          level="asInvoker"
          uiAccess="false"/>
        </requestedPrivileges>
    </security>
  </trustInfo>
</assembly>
Wenn ich die Common-Control-Version ändere, startet mein Programm überhaupt nicht mehr.

Gruß
Micha

Bernhard Geyer 5. Jul 2007 15:57

Re: Manifest Problem
 
Ich denke wenn du die Version änderst benötigst du auch einen angepaßten publicKeyToken als Checksumme.

DerAndereMicha 6. Jul 2007 10:06

Re: Manifest Problem
 
Und wo bekomme ich den publicKeyToken her?

Bernhard Geyer 7. Jul 2007 08:16

Re: Manifest Problem
 
Zitat:

Zitat von DerAndereMicha
Und wo bekomme ich den publicKeyToken her?

Danach Googeln?

DerAndereMicha 9. Jul 2007 10:42

Re: Manifest Problem
 
Leider hilft mir das nicht weiter. Denn das mache ich immer schon, bevor ich in diesem Forum Fragen stelle.

Den einzigen Hinweis, den ich gefunden habe, ist, daß die comctrl32.dll sowohl die Version 5 als auch die Version 6 der Common Controls enthält. Sollte dann nicht auch das publicKeyToken das selbe sein ?

Micha

DGL-luke 9. Jul 2007 12:17

Re: Manifest Problem
 
gibt es irgendwo referenz / tools für diese mainifeste? Vielleicht kann das Visual Studio die generieren.

DerAndereMicha 9. Jul 2007 14:21

Re: Manifest Problem
 
Habe bis jetzt nix gefunden, außer diverse Tools, die Manifeste erstellen, die dann alles im "neuen" Style erscheinen lassen.

Mir scheint es fast so, sobald ich ein Manifest verwende, werden die Controls der Applikation immer mit den Common Controls 6 dargestellt. Ich vermute fast, das Eine (keine Virtualisierung unter Vista) geht nicht ohne das Andere (Common Controls 6).

Micha

DerAndereMicha 9. Jul 2007 14:46

Re: Manifest Problem
 
So, jetzt hab ich's. Hab einfach alles weggelassen und nur den security-Teil gelassen.

Delphi-Quellcode:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel
          level="asInvoker"
          uiAccess="false"/>
        </requestedPrivileges>
    </security>
  </trustInfo>
</assembly>
Und halleluja, es geht.

Micha


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:02 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz