Seite 1 von 2
XP-Skin an/aus abfrage
Verfasst: 23.01.2006 00:48
von Donald
Hi,
suche verzweifelt eine Abfrage, mit der ich herausbekomme
ob das Programm "normal" oder mit "XP-Skin" Unterstützung
gestartet wurde.
Kann mir dabei jemand weiter helfen ?
Verfasst: 23.01.2006 11:36
von ts-soft
Ungetestet, wäre nett, wenn Du die Ergebnisse mitteilen würdest:
Code: Alles auswählen
Procedure IsAppThemed()
Protected DLL.l, Result.l
If OSVersion() >= #PB_OS_Windows_XP
DLL = OpenLibrary(#PB_Any, "uxtheme.dll")
If DLL
Result = CallFunction(DLL, "IsAppThemed")
CloseLibrary(DLL)
ProcedureReturn Result
EndIf
ProcedureReturn #False
EndIf
ProcedureReturn #False
EndProcedure
Procedure IsThemeActive()
Protected DLL.l, Result.l
If OSVersion() >= #PB_OS_Windows_XP
DLL = OpenLibrary(#PB_Any, "uxtheme.dll")
If DLL
Result = CallFunction(DLL, "IsThemeActive")
CloseLibrary(DLL)
ProcedureReturn Result
EndIf
ProcedureReturn #False
EndIf
ProcedureReturn #False
EndProcedure
Nachtrag: Die Ergebnisse kommen mir komisch vor
http://msdn.microsoft.com/library/defau ... themed.asp
http://msdn.microsoft.com/library/defau ... active.asp
Verfasst: 23.01.2006 12:34
von Hroudtwolf
Und ausschalten kannst du das Theme global hiermit.
Code: Alles auswählen
; XP-Skin push off
; 2005 Hroudtwolf
; PureBasic-Lounge.de
If OpenLibrary (1,"uxtheme.dll")
CallFunction(1, "EnableTheming",#False); Mit #True statt #False kannst du es wieder aktivieren
CloseLibrary (1)
EndIf
Verfasst: 23.01.2006 13:18
von ts-soft
Und wer zählt jetzt die restlichen 45 nicht gefragten Funktionen der DLL auf
Nicht bös gemeint.
Verfasst: 23.01.2006 13:44
von Donald
leider nicht das was ich suche.
@TS
egal ob ich das PB-Programm mit oder ohne XP-Skin starte
ergebnis immer 1
@Hroudtwolf
Die Routine ändert die Windows Einstellung.
Ich suche nur eine Abfrage ob für ein PB-Programm die
XP-Skin Unterstützung an/aus ist.
Verfasst: 23.01.2006 13:55
von ts-soft
Donald hat geschrieben:
@TS
egal ob ich das PB-Programm mit oder ohne XP-Skin starte
ergebnis immer 1
Ist mir auch aufgefallen, aber sollte eigentlich so funzen
Du kannt ja nach einer programmname.manifest bzw. nach einer Resource vom Typ 24 suchen.
Ich selber disable immer den XP-Style für einzelne Gadgets, wenns nicht passt, bzw. problems macht.
Verfasst: 23.01.2006 13:56
von Hroudtwolf
@Hroudtwolf
Die Routine ändert die Windows Einstellung.
Ich suche nur eine Abfrage ob für ein PB-Programm die
XP-Skin Unterstützung an/aus ist.
Habe nichts anderes behauptet.
Verfasst: 23.01.2006 14:18
von ts-soft
Eigentlich logisch, die Funktion ermittelt nur ob XP-Theme beim User Aktiv ist, ob die Manifest-Datei vorhanden ist, weiß der Programmierer ja normallerweise.
Also XP-Theme Aktiv + ich habe Manifest integriert = ja
ansonsten nein

Verfasst: 23.01.2006 17:27
von Thatsanee
ts-soft hat geschrieben:Du kannt ja nach einer programmname.manifest bzw. nach einer Resource vom Typ 24 suchen.
Ich selber disable immer den XP-Style für einzelne Gadgets, wenns nicht passt, bzw. problems macht.
Hallo TS,
das würde mich auch interessieren:
Wie fragt man denn ab ob Typ 24 vorhanden ist ?
Und wie disablest du XP-Style für einzele Gadgets ?
Thatsanee
Verfasst: 23.01.2006 18:52
von ts-soft
@Thatsannee
DisableXPTheme findes Du hier:
http://forums.purebasic.com/german/view ... e&start=10
sowie im engl. Forum
Das andere wirste Dir wohl selber überlegen müssen, hab da nichts fertiges
