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

Windows Discussion :

ACCESS DENIED dans HKCU


Sujet :

Windows

  1. #1
    Membre actif Avatar de Pikwik
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    237
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 237
    Points : 252
    Points
    252
    Par défaut ACCESS DENIED dans HKCU
    Je cherche à débloquer un vérouillage de IE pour un CD intéractif.

    Mon problème : Internet Explorer ne veux pas lire ma video sans mêtre un avertissement (la fameuse barre jaune) en local.

    Il y a donc moyen de déverouiller cela, mais c'est assez compliqué. J'ai donc trouvé dans la base de registre la clef concernée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    HKEY_CURRENT_USER\Software\
    Microsoft\Internet Explorer\Main\FeatureControl\
    FEATURE_LOCALMACHINE_LOCKDOWN\iexplore.exe
    Au format DWORD qu'il faut mettre à 0X0.

    J'ai donc le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    #include <windows.h>
    int WINAPI WinMain (HINSTANCE hThisInstance,
                         HINSTANCE hPrevInstance,
                         LPSTR lpszArgument,
                         int nFunsterStil)
    {
    
        HKEY hKeyRes;
        long lRes = 0;
        lRes = RegOpenKeyEx(
            HKEY_CURRENT_USER,
            "Software\\Microsoft\\Internet Explorer\\Main\\FeatureControl\\FEATURE_LOCALMACHINE_LOCKDOWN",
            0,
            WRITE_OWNER,
            &hKeyRes);
    
        lRes = 0;
    
        lRes = RegSetValueEx(
            hKeyRes,
            "iexplore.exe",
            0,
            REG_DWORD,
            (LPBYTE) 0,
            (DWORD)sizeof(DWORD));
    
        RegCloseKey(hKeyRes);
    
        return EXIT_SUCCESS;
    }
    Mais RegSetValueEx me retourne un jolie ACCESS_DENIED...
    Sachant que dans Regedit je peux bien sûr changer ma valeur sans aucun problème...

    Une idée ?

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Le seul accès que tu as demandé est WRITE_OWNER, qui signifie "droit de changer le propriétaire de cette clé". Toi, tu veux écrire une valeur dans la clé, ce qui n'est pas la même chose.
    ---> Essaie avec GENERIC_WRITE.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre actif Avatar de Pikwik
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    237
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 237
    Points : 252
    Points
    252
    Par défaut
    J'ai essayé avec tout les droits qui permettent d'écrire que j'ai vu sur MSDN, et ce avec toujours le même résultat.

    GENERIC_WRITE me donne le même resultat : ERROR_NOACCESS 998L

    Note : Désolé j'ai laissé WRITE_OWNER mais j'ai essayer aussi avec KEY_ALL_ACCESS

  4. #4
    Membre actif Avatar de Pikwik
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    237
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 237
    Points : 252
    Points
    252
    Par défaut
    Erreur de ma part :

    La bonne erreur :
    ERROR_NOACCESS 998L

    ACCESS VIOLATION

  5. #5
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    C'est normal que tu luis passes un pointeur NULL ? (ton fameux (LPBYTE)0 ).
    RegSetValueEx utilise un pointeur dans TOUS les cas. donc, ça devrait marcher mieux ainsi:
    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    DWORD dwVal = 0;
     
    //...
     
    lRes = RegSetValueEx(
     hKeyRes,
     "iexplore.exe",
     0,
     REG_DWORD,
     (BYTE const *)&dwVal,
     (DWORD)sizeof(dwVal)
     );
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  6. #6
    Membre actif Avatar de Pikwik
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    237
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 237
    Points : 252
    Points
    252
    Par défaut
    Bravo tu es un chef Médinoc !

    Vraiment heureux de te voir sur ce forum, d'autant que c'est pas la première fois que tu me résouds des problèmes que je trouve pas évidant !


+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Access denied dans une procédure stockée
    Par GLSpirit dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 21/10/2007, 23h47
  2. access denied
    Par HULK dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 30/08/2005, 08h26
  3. [Access] Insérer dans plusieurs tables simultanément
    Par coolkis dans le forum Bases de données
    Réponses: 5
    Dernier message: 22/03/2005, 15h00
  4. [access]doublons dans une table en access !
    Par hackerandco dans le forum Bases de données
    Réponses: 6
    Dernier message: 14/06/2004, 14h45
  5. Access denied..... Help !
    Par chakan dans le forum Requêtes
    Réponses: 2
    Dernier message: 05/12/2003, 22h30

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