Du kannst beim Start das testen: http://msdn.microsoft.com/en-us/library/aa969518.aspx
und während dein Programm läuft: http://msdn.microsoft.com/en-us/library/aa969230(VS.85).aspx
du kannst es auch selber deaktivieren: http://msdn.microsoft.com/en-us/library/aa969510(VS.85).aspx
aero macht probleme
-
- [ offen ]
-
progandy -
31. Januar 2009 um 18:10 -
Geschlossen -
Erledigt
-
-
Du meinst wohl 0x80000 ... WS_EX_LAYERED wird für SetBitmap aber benötigt.
//Edit: äh stimmt das ist WS_POPUP. Wenn du das Fenster selbst zeichnset mit SetBitmap sollte das aber eigentlich egal sein.Zitatmeinst du aktivieren?
Über die API kannst du es nur deaktivieren, wenn es aktiviert ist, genau so wie TeamViewer.In AutoIt ist der Befehl einfach
DLLCall("dwmapi.dll",...
oder
$DWMAPI = DLLOpen("dwmapi.dll")
Dllcall($DWMAPI,... -
Hilft dir das weiter? https://autoit.de/index.php?page…wmapi#post43437
-
Funktioniert es damit? (kannst du rausfinden, ob das ausgewählte Theme Aero heißt )
Spoiler anzeigen
[autoit]
[/autoit] [autoit][/autoit] [autoit]
; http://msdn.microsoft.com/en-us/library/bb773365(VS.85).aspx
Func _GetCurrentTheme($ExtraInfo=False)
; Prog@ndy
$Empty = ""
For $i = 1 To 1024
$Empty &= Chr(0)
Next
Local $result = DllCall("uxtheme.dll","lresult","GetCurrentThemeName","wstr",$Empty,"int",1024,"wstr",$Empty,"int",1024,"wstr",$Empty,"int",1024)
If @error Or $result[0]<>0 Then Return SetError(1,0,"")
If $ExtraInfo==False Then Return $result[1]
Local $return[3] = [$result[1] , $result[3] , $result[5]]
Return $return
EndFunc$Theme = _GetCurrentTheme()
[/autoit] [autoit][/autoit] [autoit]
MsgBox(0, '', $Theme)$ThemeInfo = _GetCurrentTheme(True)
[/autoit]
If Not @error Then MsgBox(0, '', $ThemeInfo[0] & @CRLF & $ThemeInfo[1] & @CRLF & $ThemeInfo[2])