Gibt den aktuellen Wert eines gegebenen Attributes, welches auf ein Fenster angewendet ist, zurück
#include <WinAPIGdi.au3>
_WinAPI_DwmGetWindowAttribute ( $hWnd, $iAttribute )
| $hWnd | Das Handle eines Fensters wessen Attributdaten zurückgegeben werden sollen. |
| $iAttribute | Das zurückgebende Attribut. Dieser Parameter kann einen der folgenden Werte annehmen: Windows Vista oder höher $DWMWA_NCRENDERING_ENABLED gibt True/False zurück $DWMWA_CAPTION_BUTTON_BOUNDS gibt $tRect zurück $DWMWA_EXTENDED_FRAME_BOUNDS gibt $tRect zurück Windows 8 oder höher $DWMWA_CLOAKED gibt True/False zurück |
| Erfolg: | Der Wert welcher den aktuellen Wert des Attributs enthält. Der Typ des zurückgegebenen Wertes hängt von dem Wert des $iAttribute Parameters ab. |
| Fehler: | 0 und setzt das @error Flag auf ungleich 0, das @extended Flag kann den HRESULT-Fehlercode enthalten. |
Suche nach DwmGetWindowAttribute in der MSDN Bibliothek.
#include <APIGdiConstants.au3>
#include <MsgBoxConstants.au3>
#include <WinAPIGdi.au3>
If Not _WinAPI_DwmIsCompositionEnabled() Then
MsgBox(($MB_ICONERROR + $MB_SYSTEMMODAL), 'Fehler', 'Windows Vista oder neuer mit aktiviertem Aero Themea wird benötigt.')
Exit
EndIf
Run(@SystemDir & '\calc.exe')
Local $hWnd = WinWaitActive("[CLASS:ApplicationFrameWindow]", '') ;, 3)
If Not $hWnd Then
Exit
EndIf
Local $aPos = _WinAPI_GetPosFromRect(_WinAPI_DwmGetWindowAttribute($hWnd, $DWMWA_EXTENDED_FRAME_BOUNDS))
ConsoleWrite('Links: ' & $aPos[0] & @CRLF)
ConsoleWrite('Oben: ' & $aPos[1] & @CRLF)
ConsoleWrite('Breite: ' & $aPos[2] & @CRLF)
ConsoleWrite('Höge: ' & $aPos[3] & @CRLF)