Énumère le contenu de la liste MRU (Most Recent Used)
#include <WinAPIReg.au3>
_WinAPI_EnumMRUList ( $hMRU, $iItem )
$hMRU | Handle de la liste MRU, obtenu lorsque la liste a été créée. |
$iItem | L'élément à retourner. Si cette valeur est (-1), la fonction retourne le nombre d'éléments de la liste MRU. |
Succès: | Retourne l'élément demandé dans $iItem. Si $iItem est (-1), le nombre d'éléments de la liste MRU. |
Échec: | Retourne 0 et définit @error <> 0. |
Consultez EnumMRUListW dans la librairie MSDN.
#include <APIRegConstants.au3> #include <ComboConstants.au3> #include <GUIConstantsEx.au3> #include <WinAPIReg.au3> Local $hMRU = _WinAPI_CreateMRUList($HKEY_CURRENT_USER, 'Software\MyProg\MRU', 5) ; Crée la liste MRU dans le registre (uniquement au premier démarrage) RegRead('HKCU\Software\MyProg\MRU', 'MRUList') If @error Then For $i = 5 To 1 Step -1 _WinAPI_AddMRUString($hMRU, 'String'& $i) Next EndIf GUICreate('Test ' & StringReplace(@ScriptName, '.au3', '()'), 320, 92) Local $idCombo = GUICtrlCreateCombo(_WinAPI_EnumMRUList($hMRU, 0), 10, 20, 300, 21, $CBS_DROPDOWNLIST) Local $iCount = _WinAPI_EnumMRUList($hMRU, -1) Local $sData = '' For $i = 1 To $iCount - 1 $sData &= _WinAPI_EnumMRUList($hMRU, $i) & '|' Next GUICtrlSetData(-1, $sData) Local $idButton = GUICtrlCreateButton('OK', 125, 58, 70, 23) GUISetState(@SW_SHOW) Local $iMsg Do $iMsg = GUIGetMsg() Until $iMsg = $GUI_EVENT_CLOSE Or $iMsg = $idButton If $iMsg = $idButton Then _WinAPI_AddMRUString($hMRU, GUICtrlRead($idCombo)) EndIf _WinAPI_FreeMRUList($hMRU)