Gadget Windows problème avec ActiveX

sub_aquatic Messages postés 2 Date d'inscription mercredi 27 avril 2005 Statut Membre Dernière intervention 30 novembre 2009 - 22 nov. 2009 à 14:10
ederriey Messages postés 3 Date d'inscription mardi 10 mai 2011 Statut Membre Dernière intervention 23 mai 2011 - 23 mai 2011 à 18:00
Bonjour à tous,

Je me suis lancé dans la création de gadgets Windows il y a un moment déjà mais avec le temps on se rends compte des limites du Javascript. Donc je me suis mis au C# pour créer un ActiveX. Quand je teste mon ActiveX dans une page Web normale il y le message de sécurité d'avertissement (normal), je clique pour valider l'utilisation de l'ActiveX et tout fonctionne. Mon problème est le suivant : Quand j'installe le gadget avec l'ActiveX cela génère l'erreur suivante : "Un composant ActiveX ne peut pas créer un objet", cette erreur survient dans la ligne de la page html où je crée une instance de l'ActiveX. Il y a beaucoup de forums où se sujet apparait mais après de longues heures de recherche je n'ai toujours pas la solution.

Voici le code que j'utilise :

Pour la Dll :

using System;
using System.Runtime.InteropServices;
namespace ANamespace
{
public interface ASignatures
{
string Name();
int Age { get; }
}

[ClassInterface(ClassInterfaceType.AutoDual)]
public class AClass : ASignatures
{
public string Name()
{
return "Toto";
}

public int Age
{
get { return 24; }
}
}
}

Pour le HTML :

<html>
<head>
</head>

<script language="javascript">
var x = new ActiveXObject("ANamespace.AClass"); //Création de l'instance de l'ActiveX
var texte = x.Name();
document.write(texte);
</script>

</html>

Pour la création de la Dll j'ai procédé avec ces lignes de commandes :

csc /t:library AClass.cs

regasm AClass.dll /tlb /codebase

Merci d'avance pour vos réponses

4 réponses

sub_aquatic Messages postés 2 Date d'inscription mercredi 27 avril 2005 Statut Membre Dernière intervention 30 novembre 2009
30 nov. 2009 à 14:28
Y a t-il un pilote pour sauver l'avion ???
0
ederriey Messages postés 3 Date d'inscription mardi 10 mai 2011 Statut Membre Dernière intervention 23 mai 2011
10 mai 2011 à 10:36
Bonjour,

Je rencontre exactement le même problème, et n'ai pas non plus trouvé de solution.
J'ai néanmoins réussi à rendre "safe" l'ActiveX, en implémentant l'interface IObjectSafety (http://blog.devstone.com/aaron/archive/2007/06/12/2409.aspx)
Depuis, l'IE ne m'indique plus qu'un "ActiveX méchant risque de manger la machine" :), mais pas plus de succés dans le Widget.
Aviez vous pu trouver la solution ?
Un grand merci pour votre aide.

Manu
0
ederriey Messages postés 3 Date d'inscription mardi 10 mai 2011 Statut Membre Dernière intervention 23 mai 2011
13 mai 2011 à 12:24
Bonjour,

J'ai trouvé un article du msdn expliquant comment régler les paramètres de sécurité IE pour résoudre le problème :
http://msdn.microsoft.com/en-us/library/aa965881.aspx

Je ne suis pas convaincu que ce soit LA solution, mais ça marche.

Je suis en outre toujours intéressé par une autre solution.

Manu
0
ederriey Messages postés 3 Date d'inscription mardi 10 mai 2011 Statut Membre Dernière intervention 23 mai 2011
23 mai 2011 à 18:00
Re bonjour,

Après avoir posté tout ça, tout a bien marché pendant plusieurs jours... et voilà pas qu'hier, tous les widgets étaient en vrac (mal dessinés, des boutons placés n'importe où, etc.) ; quand je dis tous, c'était même ceux de Microsoft, la météo, calendrier, et bien sur, le mien.

Après quelques recherches sur le net, je résouds le problème en supprimant une clé bizarre dans "Internet Setting/Zones" : l'affichage redevient correct, mais impossible à nouveau d'instancier l'ActiveX, et ce, même après avoir repositionné correctement la clé qui avait marché quelques jours auparavant...

Je n'y comprends plus rien :(.

Quelqu'un rencontrerait-il le même problème, ou aurait la solution ?

D'avance un grand merci.

Manu
0
Rejoignez-nous