Forums : Xul, Xbl, JS...

Aller à la discussion :  Plus récente Plus ancienne

# Permission refusée d'utiliser XPConnect

Envoyé par : lginoux

Date : 19/05/2009 17:32

Bonjour, j'ai crée une extension contenant seulement du javascript qui me permet de manipuler des fichiers locaux. Ensuite par une page web, je veux appeler ces fonctions mais j'obtiens le message d'erreur:

Un script de « http://localhost » s'est vu refuser des privilèges UniversalXPConnect.

J'ai le code suivant: dans mon extension, accessFile.js:

var accessLocal = {
 execFile: function(path){
	 try {
                netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
       } 
       catch (e) {
           alert(e);
            return;
       }
	var file =  Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
	file.initWithPath(path);
		file.launch();
}
}

et mon fichier html test.html:

<html>
   <head>
      <script src="chrome://accessLocal/content/accessFile.js"></script>
       
   </head>
   <body>
<button onclick="accessLocal.execFile('~/Bureau/test.odt')">exec</button>
   </body>
</html>

j'ai essayé ceci en local avec des url de type "file://..." et tout marchait bien. Ensuite j'ai essayé en le mettant sur mon serveur local et ça ne marchait plus.

j'installe mon extension xpi directement à partir de mon serveur donc peut etre que Firefox ne le reconnait pas comme sûr.

Je pensai que si l'on faisait une extension on avait plus de problème de privilèges mais à priori non... ou bien c'est peut être parce que c'est un javascript externe (donc non sûr.) qui appelle une méthode de mon extension?

Je sais pas qu'en pensez vous? Avez vous une idée?

Il faudrait peut être que je signe mon fichier test.html ou bien mon extension, je ne sais pas trop?

Merci

# Re: Permission refusée d'utiliser XPConnect

Envoyé par : laurentj

Date : 22/05/2009 15:11

ou bien c'est peut être parce que c'est un javascript externe (donc non sûr.) qui appelle une méthode de mon extension?

tout à fait. Et c'est normal non ? Heureusement qu'une pauvre page web ne puisse appeler des fonctions privilégiées de l'application !

Et pourquoi ne pas tout mettre dans ton extension ?

Il n'est plus possible de poster des messages dans ce forum.


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.