Funktionreferenz


_WinAPI_SystemParametersInfo

Beschreibung anzeigen in

Ermittelt oder setzt den Wert von einem der Systemweiten Parameter

#include <WinAPISys.au3>
_WinAPI_SystemParametersInfo ( $iAction [, $iParam = 0 [, $vParam = 0 [, $iWinIni = 0]]] )

Parameter

$iAction Der Systemweite Parameter der ermittelt oder gesetzt werden soll
$iParam [optional] Ein Parameter dessen Gebrauch und Format auf dem abgefragten oder gesetzten Parameter beruhen
$vParam [optional] Ein Parameter dessen Gebrauch und Format auf dem abgefragten oder gesetzten Parameter beruhen
$iWinIni [optional] Wenn ein Systemparameter gesetzt wird, legt dieses Argument fest, ob das Benutzerprofil aktualisiert wird, und
falls ja, ob die $WM_SETTINGCHANGE Nachricht an alle Benutzer gesendet werden soll. Dieses Argument kann Null sein, wenn
das Benutzerprofil nicht aktualisiert werden soll, oder es kann einer der folgenden Werte sein:
    $SPIF_UPDATEINIFILE - Schreibt die neuen Einstellungen ins Benutzerprofil
    $SPIF_SENDCHANGE - Sendet die $WM_SETTINGCHANGE Nachricht an alle Benutzer, nachdem das Benutzerprofil aktualisiert wurde
Die Konstanten sind in WinAPIsysinfoConstants.au3 definiert.

Rückgabewert

Erfolg: True
Fehler: False. Es ist _WinAPI_GetLastError() aufzurufen um erweiterte Fehlerinformationen zu erhalten.

Bemerkungen

Diese Funktion ruft immer die Unicode Version auf. Somit muss $vParam keine Übereinstimmung liefern wenn Strings verwendet werden.

Siehe auch

Suche nach SystemParametersInfo in der MSDN Bibliothek.

Beispiel

#include <Array.au3>
#include <WinAPISys.au3>
#include <WinAPIsysinfoConstants.au3>
#include <WindowsConstants.au3>

Local $aArray = GetWorkArea()
_ArrayDisplay($aArray, _WinAPI_GetSystemMetrics($SM_CXVIRTUALSCREEN) & ', ' & _WinAPI_GetSystemMetrics($SM_CYVIRTUALSCREEN))

; Ermittelt den sichtbaren Arbeitsbereich des Desktops. Dies enthält nicht den Bereich der durch die Taskleiste überdeckt wird..
Func GetWorkArea()
    Local $tWorkArea = DllStructCreate($tagRECT)
    _WinAPI_SystemParametersInfo($SPI_GETWORKAREA, 0, $tWorkArea)
    Local $aReturn[4] = [DllStructGetData($tWorkArea, 'Left'), DllStructGetData($tWorkArea, 'Top'), _
            DllStructGetData($tWorkArea, 'Right') - DllStructGetData($tWorkArea, 'Left'), DllStructGetData($tWorkArea, 'Bottom') - DllStructGetData($tWorkArea, 'Top')]
    Return $aReturn
EndFunc   ;==>GetWorkArea