DLL VB utilisée dans page HTML

saluts92 Messages postés 25 Date d'inscription mardi 31 mars 2009 Statut Membre Dernière intervention 5 avril 2022 - 7 févr. 2012 à 16:03
saluts92 Messages postés 25 Date d'inscription mardi 31 mars 2009 Statut Membre Dernière intervention 5 avril 2022 - 16 févr. 2012 à 09:20
Bonjour,
Je cherche à rélaiser des outils simples pour interférer entre ma page html et mon PC
j'ai décidé d'utiliser Visual basic 2010 Express.
Je n'arrive pas à faire exécuter mon programme VB depuis ma page HTML
Voial ce que j'ai fait jursqu'à présent :
j'ai créé un projet DLL, dans laquelle j'ai une classe MyClass et dans cette classe une fonction MyFonction :
Namespace MyNS
Public Class MyClass
    Public Function MyFunction()
        '        MsgBox("test")
        Return
    End Function
End Class
End Namespace

puis j'ai généré ma DLL Mydll.dll
Ensuite dans ma page HTML j'ai codé cela :
<html>
<head>
<script language="javascript">
function fcttest() {
   alert("oo");
   ActiveXtest.MyFunction();
}
</script>
</head>

<OBJECT id="ActiveXtest" name="ActiveXtest" classid="Mydll.dll#MyNS.MyClass">
</OBJECT>
Click ici
<hr>
 
</html>

pour info Mydll.dll est dans le meme répertoire que mon fichier HTML
d'avance merci

6 réponses

saluts92 Messages postés 25 Date d'inscription mardi 31 mars 2009 Statut Membre Dernière intervention 5 avril 2022
14 févr. 2012 à 16:57
personne ne peut vraiment m'aider ?

y aurait il un runtime à installer ?
0
cs_deathsender Messages postés 10 Date d'inscription mardi 7 mai 2002 Statut Membre Dernière intervention 16 février 2012
14 févr. 2012 à 17:46
Bonjour,

Peut-être que ma réponse paraîtra superflue, mais il me semble que votre assembly doit être exposé à COM (menu Projet -> Propriétés de Mydll; onglet Compiler -> case à cocher "Inscrire pour COM Interop").
0
saluts92 Messages postés 25 Date d'inscription mardi 31 mars 2009 Statut Membre Dernière intervention 5 avril 2022
15 févr. 2012 à 07:14
merci, mais j'avais bien coché cette case qui s'apelle "Rendre l'assembly visible par COM" sur VB 2010 express

amoins que tu ne me perles d'autre chose ?
0
cs_deathsender Messages postés 10 Date d'inscription mardi 7 mai 2002 Statut Membre Dernière intervention 16 février 2012
15 févr. 2012 à 13:53
Bonjour,

Je parlais bien de ça, oui.
A présent, il faut bien comprendre qu'un composant ActiveX/COM doit être enregistré en base de registre sur la machine qui exécute le code d'instanciation (dans ton cas, il s'agit de la balise OBJECT de ton code html).
Pour ce faire, tu dois exécuter la ligne de commande "regsvr32 CheminOuSeTrouveLaDLL\Mydll.dll" (où CheminOuSeTrouveLaDLL est à remplacer bien entendu).

Je pense aussi que tu devrais changer "Mydll.dll#MyNS.MyClass" par "Mydll.MyClass" OU "MyNS.MyClass" dans ta balise OBJECT (faut tester).

En espérant t'avoir aidé.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_deathsender Messages postés 10 Date d'inscription mardi 7 mai 2002 Statut Membre Dernière intervention 16 février 2012
16 févr. 2012 à 09:10
Bonjour,

Pour être précis, et étant donné que tu as spécifié un namespace, tu devras spécifier "Mydll.MyNS.MyClass" dans ta balise OBJECT, d'après mes tests.

Cela fonctionne-il ?
0
saluts92 Messages postés 25 Date d'inscription mardi 31 mars 2009 Statut Membre Dernière intervention 5 avril 2022
16 févr. 2012 à 09:20
ca ne fonctionne toujours pas

sinon mes besoins initiaux étant de :
- créer un fichier sur le PC client sans intervention utilisateur
- imprimer page courante (HTML) sans intervention utilisateur

j'ai suivi une autre piste celle de ActivexObject présent sur Internet Explorer

pour mon premier besoin, cela fontionne parfaitement en utilisant :
var myvar= new ActivexObject("scripting.filesystemobject) 


par contre je ne trouve pas quel objet activex utilisé pour l'impression de la page courante sous IE

si quelqu'un a une piste ?
0
Rejoignez-nous