IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 Delphi Discussion :

fichier recent vider effacer la liste


Sujet :

Delphi

  1. #1
    Membre expérimenté
    Avatar de ouiouioui
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2006
    Messages
    984
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 984
    Points : 1 418
    Points
    1 418
    Par défaut fichier recent vider effacer la liste
    Bonjour, j'ai beaucoup de TOpenDialog dans mon application et j'ai entrepris d'utiliser la liste des fichiers récent lorsque on attache le programme à la barre des tache et que l'on fait un clique droit sur l'icône.

    pour cela j'utilise un TdwJumpLists

    sa fonctionne sauf que tous mes opendialog modifiait cette liste, j'ai donc ajouté aux options des opendialog ofDontAddToRecent

    mais comment vider la liste actuel afin de repartir à 0, j'ai cherché le registre mais je trouve aucune clé qui contient un des fichiers récent.

    merci.
    Il existe 3 sortes de gens: ceux qui savent compter et ceux qui ne savent pas.

  2. #2
    Membre expérimenté Avatar de guillemouze
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    876
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 876
    Points : 1 448
    Points
    1 448
    Par défaut
    j'ai trouvé ca sur msdn, ca peut peut etre t'aider
    OFN_DONTADDTORECENT
    0x02000000
    Prevents the system from adding a link to the selected file in the file system directory that contains the user's most recently used documents. To retrieve the location of this directory, call the SHGetSpecialFolderLocation function with the CSIDL_RECENT flag.

  3. #3
    Membre expérimenté
    Avatar de ouiouioui
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2006
    Messages
    984
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 984
    Points : 1 418
    Points
    1 418
    Par défaut
    Merci, sa contient les fichiers récemment ouvert de Windows, sa me donne
    C:\Users\Alexandre\AppData\Roaming\Microsoft\Windows\Recent

    Mais il y a de tous en fait, pas que ceux de mon programme. Je vais filtrer par extension, mais comment windows fait le tri en affichant que certain. Il regarde le registre et filtre avec les extensions associées ?

    Du coup si un autre programme ouvre la même extension et ajoute au fichier récent sa va polluer ma liste ?
    donc non je viens de tester, du coup je ne peux pas filtrer par extensions sinon sa va perturber les listes des autres programmes.

    donc il y a autre chose que ces raccourcis, une clef registre ?
    Il existe 3 sortes de gens: ceux qui savent compter et ceux qui ne savent pas.

  4. #4
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 683
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 683
    Points : 13 092
    Points
    13 092
    Par défaut
    Normalement, les fichiers ouverts par OpenDialog sont stockés sous la clé MRU (Most Recently Used).

    Regarde éventuellement sous la clé :
    HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSaveMRU\TonExtention

  5. #5
    Membre expérimenté
    Avatar de ouiouioui
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2006
    Messages
    984
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 984
    Points : 1 418
    Points
    1 418
    Par défaut
    Ah oui je trouve mon extension dedans
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSavePidlMRU\db3
    Sa contient des REG_BINARY, plus qu'a les décoder pour savoir lesquels je doit effacer.

    Merci.

    Je comprends pourquoi beaucoup de programmes crée leurs listes plutôt que d'utiliser ce système.

    finalement c'est dans un dossier :
    C:\Users\Alexandre\AppData\Roaming\Microsoft\Windows\Recent\AutomaticDestinations
    si j'efface un des fichiers ma liste de fichier récent s'efface.
    source : http://tzworks.net/prototype_page.php?proto_id=20
    Il existe 3 sortes de gens: ceux qui savent compter et ceux qui ne savent pas.

  6. #6
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 683
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 683
    Points : 13 092
    Points
    13 092
    Par défaut
    Citation Envoyé par ouiouioui Voir le message
    Sa contient des REG_BINARY, plus qu'a les décoder pour savoir lesquels je doit effacer.
    Le nom a changé (OpenSavePidlMRU) et le format évolué en effet. J'en étais encore à XP
    A l'époque, c'était de simples listes de chaînes de la forme:

    a reg_sz Fichier1
    b reg_sz Fichier2
    MRUList reg_sz ab

    Je n'ai pas tout lu, mais il semble y avoir quelque chose de relatif ici.

  7. #7
    Membre expérimenté
    Avatar de ouiouioui
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2006
    Messages
    984
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 984
    Points : 1 418
    Points
    1 418
    Par défaut
    j'ai oublié de préciser oui que c'était relatif à Windows 7 et plus.

    j'ai presque réussi, le dernier point c'est lorsque je double clique un fichier associé à mon application il s'ajoute à la liste des fichiers récent. Donc la je bute je ne trouve rien sur google ou ailleurs concernant un réglage a ajouter au clefs registre qui ouvre les extensions concernés.

    donc sa va finir je vais créer une catégorie et gérer moi même la liste.

    merci à tous.
    Il existe 3 sortes de gens: ceux qui savent compter et ceux qui ne savent pas.

Discussions similaires

  1. [AC-2010] Effacement fichiers recents
    Par franckb74 dans le forum VBA Access
    Réponses: 0
    Dernier message: 05/07/2013, 16h31
  2. Compter le nb de fichier et en effacer certains
    Par Krispy dans le forum Langage
    Réponses: 4
    Dernier message: 13/07/2006, 13h57
  3. Réponses: 9
    Dernier message: 27/06/2006, 21h48
  4. Effacer une liste déroulante
    Par gougnougnou dans le forum Delphi
    Réponses: 5
    Dernier message: 28/05/2006, 11h17
  5. [.NET]réécriture d'un fichier a partir d'une list box
    Par scorpking dans le forum VC++ .NET
    Réponses: 14
    Dernier message: 24/04/2006, 14h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo