-
ActiveX sur serveur IIS
Bonjour à tous,
Je rencontre actuellement un bug de fonctionnement sur un code javascript qui pour le moment tourne sur un IIS local sous Windows10 et à terme sera en production sous Windows Server 2008.
Le message que j'obtiens est un des plus classiques : ActiveX Component can't create object.
Ci-dessous le code correspondant :
Code:
fso = CreateObject("Scripting.FileSystemObject");
Je précise qu'un certificat de signature de code est installé sur mon poste de travail et que le fichier de test fonctionne très bien quand je l'ouvre avec IE sans passer par IIS.
Merci par avance de votre aide.
-
-
-
voui mais du JavaScript exécuté par quel interpréteur et dans quel contexte ?
Ta syntaxe fonctionne peut être sous IE, mais le contexte est IE qui fournit l'interpréteur JS.
Sous IIS ça ne veut rien dire à moins que tu ne le configures en conséquence. IIS est un serveur web essentiellement.
Ou bien je crois comprendre que tu as une page html avec du JS et cette instruction, et quand tu la sers depuis un serveur web, ça ne fonctionne plus ?
C'est alors probablement un problème de sécurité de IE, il faut placer ton site dans ceux "de confiance" et autoriser l'exécution des activeX, même ceux risqués
-
Le seul souci c'est que ces paramètres de sites de confiance sont désactivés. Donc il faut trouver une autre solution.
Saurais-tu comment configurer IIS pour réussir à faire fonctionner un activex ?
-
Indirectement tu réponds oui à ma 2e option
politique de sécurité sur l'installation de windows ? tu travailles sur un parc info ?
tu veux pouvoir parcourir les répertoires d'un poste client à travers le navigateur ?
que veux-tu faire en fait ?
-
Oui il s'agit bien d'une politique de sécurité dans ma société
Et oui l'objectif est de parser le file system local depuis IE pour sélectionner un dossier cible de téléchargement
-
Je précise qu'un certificat utilisateur de signature de code a été installé sur mon poste et ç'est grace à ce certificat que mon code fonctionne sans IIS (avec tous les avertissements de sécurité qui s'imposent). Une fois en ligne sur IIS, tout est KO.
Est-ce que je dois passer par un certificat de serveur sous IIS ?
-
Je ne crois pas que cela change grand chose
Le problème vient du fait que les navigateurs et JS sont fait de telle façon à ne pas pouvoir accéder au système de fichiers local, hormis via des input type file ou avec l'API file HTML5
Faire ajouter ton site IIS aux sites trustés par l'entreprise, et voir si les options activeX peuvent être activées, il faut passer par les admins système de ton parc, ça me parait être une solution, à voir...
-
Citation:
Code:
fso = CreateObject("Scripting.FileSystemObject");
Javascript (JScript) ? Normalement, on fait comme ça.
Code:
fso = new ActiveXObject("Scripting.FileSystemObject");
-
Oui c'est bien le code que j'utilise (j'ai fait une tentative en vbs d'où la première version du code) et il plante systématiquement avec IIS
Et en fait, entre temps, j'ai développé une HTA qui fonctionne très bien sans IIS mais qui refuse d'activer la partie activex une fois en ligne.