Objet com - déclaration et utilisation [Résolu]

Messages postés
4265
Date d'inscription
samedi 8 septembre 2007
Statut
Membre
Dernière intervention
29 août 2018
- - Dernière réponse : nagaD.scar
Messages postés
4265
Date d'inscription
samedi 8 septembre 2007
Statut
Membre
Dernière intervention
29 août 2018
- 4 déc. 2014 à 14:32
Salut à tous !
Bon le titre est surement mal choisi mais voici ma question :

Je souhaite pouvoir utiliser un composant sur mon poste ayant un clsid précis. Grâce à ce CLSID, j'ai pu retrouver la dll correspondante dans le registre.
Maintenant mon objectif est de pouvoir utiliser ce composant. Je m'explique : le composant est normalement utiliser via une interface web afin de compresser/décompresser une image. Cependant je ne parviens pas à l'utiliser dans un web browser (on brasse pas mal d'images donc tout faire à la mains c'est pas jouable).
J'ai donc pensé à utiliser le clsid afin d'avoir mon interface en c# mais je vous avous ne pas connaitre et je patauge ... je cherche sur internet mais je ne trouve rien qui me corresponde.

Voici le contenu, récupérer via OLEViewer, de la classe qui m'interesse (je limite à ce qui m'interesse) :

[
uuid(F71561BB-BE39-11D5-902E-0050DA1B10B7),
helpstring("IImagePluginCtrl Interface"),
dual
]
dispinterface IImagePluginCtrl {
properties:
methods:
[id(0x00000016), propget, helpstring("property IMAGE_URL")]
BSTR IMAGE_URL();
[id(0x00000016), propput, helpstring("property IMAGE_URL")]
void IMAGE_URL([in] BSTR rhs);
[id(0x00000022), helpstring("method ClearImage")]
void ClearImage();
[id(0x00000023), helpstring("method CopyToClipboard")]
void CopyToClipboard();
[id(0x00000024), helpstring("method PrintImage")]
}

Le but étant donc de donner un chemin à IMAGE_URL puis d'appeler la méthode CopyToClipboard afin d'enregistrer l'image décompressée.

Et voici le code html (+js) qui permet de faire la conversion depuis le navigateur :


<html>
<head>
<script>
function LoadImage(strFileName) {
var imgplug = document.getElementById('imageplugin');
imgplug.IMAGE_URL = strFileName;
imgplug.CopyToClipboard();
}
</script>
</head>

<body>
<object id="imageplugin" type="image/x-pqi" classid="CLSID:CE57799B-BBF5-11D5-902E-0050DA1B10B7" width="100%" height="100%">
</object>
</body>
</html>


Si quelqu'un pouvait me décoincer soit en m'aidant avec mon interface, soit en sachant pourquoi je ne peux pas avoir le même résultat dans le webBrowser que dans ie, ca serai parfais! car là je patauge un peu -_-

merci d'avance.
naga
Afficher la suite 

2 réponses

Messages postés
219
Date d'inscription
mercredi 26 octobre 2011
Statut
Membre
Dernière intervention
22 juin 2017
8
0
Merci
Bonjour,

Peut être que la version d'internet explorer qui est émulée par ton webbrowser est celle par défaut, je pense IE7.

tu peux corriger cela dans les registres.

voir ici http://msdn.microsoft.com/en-us/library/ee330730.aspx


bonne journée.
Commenter la réponse de cgandco
Messages postés
4265
Date d'inscription
samedi 8 septembre 2007
Statut
Membre
Dernière intervention
29 août 2018
16
0
Merci
salut,

merci pour ta réponse, mais j'avais déjà tenté le coup ... j'ai fais autrement pour mon "application" , je passe directement par ie et je fais mes conversions via javascript.

bonne journée !
naga
Commenter la réponse de nagaD.scar