Obtient ou définit la valeur de l'un des paramètres wide du système
#include <WinAPISys.au3>
_WinAPI_SystemParametersInfo ( $iAction [, $iParam = 0 [, $vParam = 0 [, $iWinIni = 0]]] )
$iAction | Le paramètre system-wide à obtenir ou définir |
$iParam | [optionnel] Un paramètre dont l'usage et le format dépend du paramètre interrogé ou défini |
$vParam | [optionnel] Un paramètre dont l'usage et le format dépend du paramètre interrogé ou défini |
$iWinIni | [optionnel] Si le paramètre du système est en train d'être défini, spécifie si le profil de l'utilisateur doit être mis à jour, et si c'est le cas, si le message $WM_SETTINGCHANGE sera diffusée. Ce paramètre peut être égal à zéro si vous ne voulez pas mettre à jour le profil de l'utilisateur ou bien il peut prendre une ou plusieurs des valeurs suivantes: $SPIF_UPDATEINIFILE - Ecrit le nouveau paramètre dans le profil de l'utilisateur $SPIF_SENDCHANGE - Diffuse le message $WM_SETTINGCHANGE après mise à jour du profil de l'utilisateur |
Succès: | Retourne True |
Échec: | Retourne False, appelez _WinAPI_GetLastError() pour obtenir des informations sur l'erreur. |
Cette fonction appelle toujours la version Unicode, aussi $vParam doit être adapté lors de l'utilisation des chaînes.
Consultez SystemParametersInfo dans la librairie MSDN.
#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)) ; Obtient la zone visible de travail du bureau, elle ne comprend pas la zone couverte par la barre des tâches. Func GetWorkArea() Local $tWorkArea = DllStructCreate($tagRECT) _WinAPI_SystemParametersInfo($SPI_GETWORKAREA, 0, DllStructGetPtr($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