UDF > WinAPIEx > Registry >


_WinAPI_EnumMRUList

Énumère le contenu de la liste MRU (Most Recent Used)

#include <WinAPIReg.au3>
_WinAPI_EnumMRUList ( $hMRU, $iItem )

Paramètres

$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.

Valeur de retour

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.

Voir aussi

Consultez EnumMRUListW dans la librairie MSDN.

Exemple

#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)