[Delphi 7] Control Panel Applet met XP manifest

Pagina: 1
Acties:

  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 14-05-2024

OZ-Gump

terug van weggeweest

Topicstarter
History
Een search op zowel BDN, google groups als GoT heeft me helaas niet aan de juiste info kunnen helpen voor dit 'probleem'. Vandaar dat ik maar eens ga kijken of iemand hier dit al eens aan de hand heeft gehad...

Probleem
Ik wil graag de Control Panel Applet die ik bij onze aplicatie heb gemaakt ook mee skinnen op een XP bakkie. Zeker nu ik weet dat de eerste klant aan wie het verkocht is op XP draait: het moet er gelikt uitzien! Als ik echter een XPmanifest gebruik op een Control PAnel Applet gebeurt daar verder niks mee: alle controls zijn nog oldstyle.
Het enige topic op Google groups dat ik er over kon vinden verteld dat XPManifest linked op de id 1, en dat voor een Control Panel Applet de id 123 nodig is. Ik heb echter geen flauw idee waar ik dat zou moeten aanpassen, omdat op xpmanifest niets aan te passen is! :? Ook niet in de source ervan, dus ik zit even vast....

Anyone got a clue?

My personal website


  • alienfruit
  • Registratie: Maart 2003
  • Laatst online: 26-05 11:18

alienfruit

the alien you never expected

Gewoon dan je eigen resource file maken en included in je project ...

application_manifest
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <assemblyIdentity
    type="win32"
    name="ApplicationTemplateAppNameHere"
    version="1.0.0.0" 
    processorArchitecture="*"/>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity
        type="win32"
        name="Microsoft.Windows.Common-Controls"
        version="6.0.0.0"
        publicKeyToken="6595b64144ccf1df"
        language="*"
        processorArchitecture="*"/>
    </dependentAssembly>
  </dependency>
</assembly>


winxp_support.rc
code:
1
123 24 "application_manifest.bin"

[ Voor 107% gewijzigd door alienfruit op 13-12-2003 14:03 ]


  • martijn_brinkers
  • Registratie: November 2001
  • Laatst online: 31-10-2025
http://oldlook.experts-ex...es/Delphi/Q_20702648.html
Simply: Normal XPManifest in executables is stored in resourcetype 24, directory 1. for dll's it should be in resourcetype 24, dircectory 2, and for control panel applets it shouldbe in directory 101
Wat je kan proberen is ipv XPMan te gebruiken zelf de manifest resource te linken aan je dll. Zoek naar WindowsXP.rc in de Delphi7\Source\VCL dir. Kopieer die en rename naar bijv. MyXP.rc

vervang dan

1 24 "sample.manifest"

door

101 24 "sample.manifest"

In je prog moet je dan die RC file includen door

{$R MyXP.res}

Je hebt dan ook zorgen dat je het XPMan control verwijderd.

Het kan zijn dat je even moet klooien met de 1 en 24 omdat het niet duidelijk is welke waardes je daarvoor moet gebruiken in een cpl

  • jelmervos
  • Registratie: Oktober 2000
  • Niet online

jelmervos

Simple user

Met Delphi 7 kun je gewoon in je project source dit toevoegen:
{$R WindowsXP.res}

"The shell stopped unexpectedly and Explorer.exe was restarted."


  • martijn_brinkers
  • Registratie: November 2001
  • Laatst online: 31-10-2025
Met Delphi 7 kun je gewoon in je project source dit toevoegen:
{$R WindowsXP.res}
Dat doet hij al. Welliswaar impliciet door gebruik te maken van XPMan. De 'fout' zit m nou juist in WindowsXP.rc die de 'verkeerde' parameters gebruikt.

  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 14-05-2024

OZ-Gump

terug van weggeweest

Topicstarter
Yup yup yup.... gevonden!
Thanks to TijnFLiP en alienfruit is het me gelukt. Eigen resource file en manifest aangemaakt en deze gebruikt in de control panel app. Het hoeft helemaal niet moeilijk te zijn....

Thanks! ;)

My personal website

Pagina: 1