none
Rapport registre par récursivité RRS feed

  • Question

  • Bonjour, j'espère que vous saurez m'aider.
    Voici mon problème, j'aimerais lister une partie de mon registre en commençant par exemple à "HKEY_LOCAL_MACHINE/Software", mon programme devrait voir toutes les clés situées dans ce "dossier" plus les sous-clés jusqu'à ce qu'il ne trouve plus de clés en dessous dans l'arborescence.
    J'ai essayé, j'arrive à avoir le premier palier de mon arborescence mais je ne sais pas aller plus bas car je n'ai pas d'idées pour la procédure à faire.
    Toutes les clés et sous-clés trouvées seront sauvegardés dans un fichier texte.

    Merci d'avance
    lundi 27 octobre 2008 09:22

Toutes les réponses

  • Lorsque tu enumères chaque répertoire de HKEY_LOCAL_MACHINE, il faut aussi énumérer chacun des éléments de type répertoire trouvé par une fonction récursive et ainsi de suite jusqu'à ce qu'il n'y ait plus aucun élément :

    long KeyEnum( HKEY hKey, CString sParentFolder )
        {
        ..
        .. code d'énumération ..
        ...

        for ( i=0; i<FolderEnumeredNb; i++ )
            {
            CString sSubFolder( sParentFolder );
            sSubFolder += "\\";
            sSubFolder += FolderEnumered[i];
            if ( !KeyEnum( hKey, sSubFolder ) )
                return FALSE;
            }

        return TRUE;
        }


    MrFL.
    • Proposé comme réponse MrFL vendredi 30 octobre 2009 04:05
    vendredi 30 octobre 2009 04:02