AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

XP-Style in DLL

Ein Thema von c113plpbr · begonnen am 28. Dez 2005 · letzter Beitrag vom 31. Dez 2005
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von c113plpbr
c113plpbr

Registriert seit: 18. Nov 2003
Ort: localhost
674 Beiträge
 
Delphi 2005 Professional
 
#11

Re: XP-Style in DLL

  Alt 29. Dez 2005, 22:51
Zitat von faux:
Ist die DLL von dir, also hast du den Code?
Ja, es ist meine DLL
Zitat von faux:
md_mse hat bereits vorgeschlagen, dass du mal mit manifest probieren kannst.
Und ich hab bereits gesagt, warum dies nur schwer möglich ist:
Zitat von c113plpbr:
Das mit dem Manifest wäre soweit kein problem, doch leider ist das "fremde" Programm dass meine dll lädt rundll32.exe, und dieses liegt bekanntlicherweise im system-verzeichnis, auf welches leider nicht jeder zugriffsrechte hat. Und mein Programm sollte möglichst nicht nur mit Admin-Rechten laufen ...
Zitat von md_mse:
Hast du eigentlich mal versucht diese manifest XML in die Ressourcen hinzuzufügen?
Ja, ich habs in die dll-ressoucen hinzugefügt, leider ohne Erfolg.


ciao, Philipp
Philipp
There is never enough time to do all the nothing you want.
*HABENWILL*
  Mit Zitat antworten Zitat
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#12

Re: XP-Style in DLL

  Alt 29. Dez 2005, 22:57
Zitat von c113plpbr:
Zitat von faux:
Ist die DLL von dir, also hast du den Code?
Ja, es ist meine DLL
Hast du schon probiert XPMan in die uses-Klausel aufzunehmen?

Ich hab mal Gegooglet und das hier gefunden: http://www.link-rank.com/dll.htm. Hier wird erklärt wie man eine Form in eine DLL einbindet, was du jedoch schon hast. Auf dem Screenshot jedoch, siehts so aus, also ob er das XP-Style auch in der DLL-Form hat. Sieh dir mal an wie der das erledigt hat.

Grüße
Faux
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
Benutzerbild von c113plpbr
c113plpbr

Registriert seit: 18. Nov 2003
Ort: localhost
674 Beiträge
 
Delphi 2005 Professional
 
#13

Re: XP-Style in DLL

  Alt 29. Dez 2005, 23:16
Zitat von faux:
Hast du schon probiert XPMan in die uses-Klausel aufzunehmen?
Genauer lesen bitte:
Zitat von c113plpbr:
Zitat von md_mse:
Hast du eigentlich mal versucht diese manifest XML in die Ressourcen hinzuzufügen?
Ja, ich habs in die dll-ressoucen hinzugefügt, leider ohne Erfolg.
Das ist so ziemlich dasselbe ...

Zitat von faux:
Ich hab mal Gegooglet und das hier gefunden: http://www.link-rank.com/dll.htm. Hier wird erklärt wie man eine Form in eine DLL einbindet, was du jedoch schon hast. Auf dem Screenshot jedoch, siehts so aus, also ob er das XP-Style auch in der DLL-Form hat. Sieh dir mal an wie der das erledigt hat.
Da muss man nicht viel weiter lesen als bis dahin:
Zitat:
This is VCLSkin demo for DLL form.
Das ist eine kostenpflichtige Style-komponente ...

ciao, Philipp
Philipp
There is never enough time to do all the nothing you want.
*HABENWILL*
  Mit Zitat antworten Zitat
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#14

Re: XP-Style in DLL

  Alt 29. Dez 2005, 23:24
Zitat von c113plpbr:
a muss man nicht viel weiter lesen als bis dahin
Ich habs nicht gelesen.

Und was ist mit der Manifest?
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
Benutzerbild von c113plpbr
c113plpbr

Registriert seit: 18. Nov 2003
Ort: localhost
674 Beiträge
 
Delphi 2005 Professional
 
#15

Re: XP-Style in DLL

  Alt 29. Dez 2005, 23:45
Zitat von faux:
Und was ist mit der Manifest?
Wie? Du meinst als ".manifest" datei, oder? Wenn ja, solltest du wirklich besser lesen:
Zitat von c113plpbr:
Das mit dem Manifest wäre soweit kein problem, doch leider ist das "fremde" Programm dass meine dll lädt rundll32.exe, und dieses liegt bekanntlicherweise im system-verzeichnis, auf welches leider nicht jeder zugriffsrechte hat. Und mein Programm sollte möglichst nicht nur mit Admin-Rechten laufen ...
Sprich, das is ned so doll ... da ich eigentlich nicht vorhabe rundll32.exe mit nem xp-manifest auszustatten ...

Aber es muss doch da irgendeine "Software-Lösung" geben, irgendeinen API-Befehl, oder was auch immer ...

ciao, Philipp
Philipp
There is never enough time to do all the nothing you want.
*HABENWILL*
  Mit Zitat antworten Zitat
Benutzerbild von md_mse
md_mse

Registriert seit: 13. Aug 2003
Ort: Berlin
95 Beiträge
 
#16

Re: XP-Style in DLL

  Alt 30. Dez 2005, 00:12
Hab da vielleicht was gefunden...
Guck dir mal die UxTheme.pas an, die bei Delphi mit dabei sein sollte... Zumindest ab 2005 (?).
An sonsten findest du sie auf Delphi-Gems
Da gibt es interessante Methoden, vielleicht bringts ja was.
  Mit Zitat antworten Zitat
Benutzerbild von c113plpbr
c113plpbr

Registriert seit: 18. Nov 2003
Ort: localhost
674 Beiträge
 
Delphi 2005 Professional
 
#17

Re: XP-Style in DLL

  Alt 30. Dez 2005, 14:21
Zitat von md_mse:
Hab da vielleicht was gefunden...
Guck dir mal die UxTheme.pas an, die bei Delphi mit dabei sein sollte... Zumindest ab 2005 (?).
An sonsten findest du sie auf Delphi-Gems
Da gibt es interessante Methoden, vielleicht bringts ja was.
Hmm ... ja, die unit enthält ganz interessante sachen ... so kommt es, dass ich jetzt mithilfe der Funktion "SetWindowTheme" XP-Styles entfernen oder verdrehen kann ... sieht ganz lustig aus, wenn man einer Form den style eines Buttons gibt, aber dennoch kann ich komponenten die kein XP-Style haben, nicht damit ausstatten ... warum auch immer, denn bei SetWindowTheme(btn.Handle, nil, 'button'); passiert garnix ... ich hab schon ziemlich viel rumprobiert, aber ich werd daraus einfach ned schlau ... kennt sich damit jemand aus?

ciao, Philipp
Philipp
There is never enough time to do all the nothing you want.
*HABENWILL*
  Mit Zitat antworten Zitat
Benutzerbild von md_mse
md_mse

Registriert seit: 13. Aug 2003
Ort: Berlin
95 Beiträge
 
#18

Re: XP-Style in DLL

  Alt 31. Dez 2005, 01:24
Vergiss aber nicht, das das XML File in den Ressourcen sein muss!
  Mit Zitat antworten Zitat
Benutzerbild von Flocke
Flocke

Registriert seit: 9. Jun 2005
Ort: Unna
1.172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#19

Re: XP-Style in DLL

  Alt 31. Dez 2005, 13:18
Ich hab' gerade mal ein bisschen nachgeforscht und versucht, UxTheme.IsAppThemed und UxTheme.IsThemeActive zu überschreiben. Das Problem ist, dass der Aufruf (Themes.pas):
FNewComCtrls := GetFileVersion(comctl32) >= ComCtlVersionIE6; je nach vorhandenem Manifest eine andere Version zurückliefert (ohne: 5.irgendwas, mit: 6.irgendwas) und danach entschieden wird, ob theming benutzt werden kann.

Auf meinem Rechner (MCE 2005):
C:\Windows\system32\comctl32.dll: 5.82.2900.2649
C:\Windows\WinSxS\x86_Microsoft.Windows.Common-Controls_...\comctl32.dll: 6.0.2600.0, 6.0.2900.2180 und 6.0.2900.2649

Ich hab' noch keine Möglichkeit gefunden das zu umgehen...
Volker
Besucht meine Garage
Aktuell: RtfLabel 1.3d, PrintToFile 1.4
  Mit Zitat antworten Zitat
xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#20

Re: XP-Style in DLL

  Alt 31. Dez 2005, 13:32
Hallo,
Zitat von Flocke:
Das Problem ist, dass der Aufruf (Themes.pas):
FNewComCtrls := GetFileVersion(comctl32) >= ComCtlVersionIE6; je nach vorhandenem Manifest eine andere Version zurückliefert (ohne: 5.irgendwas, mit: 6.irgendwas) und danach entschieden wird, ob theming benutzt werden kann.
Das ist nicht das Problem, sondern genau der Grund für das Manifest. Dieses entscheidet, welche Version verwendet wird. Nur mit der Version >= 6 ist Theming möglich.

Gruß
xaromz
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:11 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