À l'aide de Javascript dans un fichier HTA de lecture/écriture du registre de Windows

Je suis actuellement en train d'écrire du code Javascript dans le but de lire et d'écrire à partir de la base de registre Windows dans un fichier HTA. Voici le code actuel je suis aide à l'écriture:

writeInRegistry = function (sRegEntry, sRegValue) {
    Regpath = "HKEY_LOCAL_MACHINE\\Software\\CompanyName\\CompanyValues\\" + sRegEntry;

    try {
        var oWSS = new ActiveXObject("WScript.Shell");

        oWSS.RegWrite(Regpath, sRegValue, "REG_DWORD");
        oWSS = null;


    } catch (e) {
        alert('Error trying to write "' + sRegValue + '" to registry entry "' + sRegEntry + '"');
    }
}

Malheureusement quand j'ai vérifier les valeurs dans regedit, elles restent inchangées. J'ai pris soin de vérifier que le chemin d'accès du registre est exactement la même que je l'ai en javascript. Il ne retourne pas une erreur, donc je suis en supposant que le chemin d'accès est correct.

J'ai aussi tenté pour essayer

var oWSS = WScript.CreateObject("WScript.Shell");

visé dans le présent msdn page, au lieu de

var oWSS = new ActiveXObject("WScript.Shell");

mais qui m'a donné le plus de problèmes.

Toute aide est très appréciée! Merci!

  • J'ai proposé une autre approche, sans tester votre code en premier. Cependant, après avoir testé, j'ai complètement changé ma réponse originale à cette question.
  • J'ai couru votre code et il a parfaitement fonctionné. Assurez-vous que vous exécutez l'éditeur du registre (regedit) ainsi que votre HTA application en tant qu'Administrateur, pour observer les changements que votre code.
InformationsquelleAutor Jon | 2012-01-16